Мне нужно управлять программой, посылая команды в кодировке utf-8 на ее стандартный ввод. Для этого я запускаю программу, используя subprocess.Popen()
:
proc = Popen("myexecutable.exe", shell=True, stdin=PIPE, stdout=PIPE, stderr=PIPE)
proc.stdin.write(u'ééé'.encode('utf_8'))
Если я запускаю это с консоли cygwin utf-8, это работает. Если я запускаю его из консоли Windows (encoding = 'cp1252'), это не сработает. Есть ли способ заставить это работать без необходимости устанавливать консоль cygwin utf-8 на каждый компьютер, с которого я хочу запустить? (NB: мне не нужно ничего выводить на консоль)