Как избежать потери фокуса программы после subprocess.call? - PullRequest
1 голос
/ 11 октября 2019

Я пытаюсь извлечь данные из программы;его необработанные файлы данных являются зашифрованными XML-файлами, поэтому я планирую запустить программу, а затем использовать команды управления мышью (например, pyautogui) для копирования / вставки данных.

Пока я падаю на первое препятствие;когда я запускаю subprocess.call для запуска программы, программа получает фокус окна, и мой последующий код не выполняется, пока я не закрою программу вручную.

workingFolder = self.get_working_folder()  # get path where raw data is

subprocess.call('Path\Program.exe')  # works, Program.exe starts

print(workingFolder)  # this doesn't execute until I close the Program window

РЕДАКТИРОВАТЬ: после дальнейшего тестирования я ответил на свой собственныйвопрос - подпроцесс. Открытое было на самом деле то, что мне было нужно, несмотря на мои первоначальные сомнения по этому поводу! Спасибо всем, кто посмотрел на мой вопрос:).

workingFolder = self.get_working_folder()

subprocess.Popen('Path\Program.exe')

print('This works')
...