Почему исполняемый файл перестал работать с popen в python? - PullRequest
0 голосов
/ 02 ноября 2019

Я управлял моделями потоков, используя исполняемый файл, который должен быть помещен в каталог, содержащий входные данные. Я использовал subprocess.popen () для запуска исполняемого файла в нескольких разных папках, исполняемый файл использует рабочий каталог для определения местоположения входных и выходных файлов. Я мог успешно запускать модели в пакетном режиме до последнего обновления разработчика, теперь модель не будет работать с использованием приведенного ниже кода, который работал для последней версии exe.

# Worked before latest exe version
dir = r"C:\Users\me\Documents\Models\Model1"
exe_fp = os.path.join(dir, "FLO.exe")
process = subprocess.Popen(exe_fp, cwd=dir)

Если я открою Windows Explorer и дважды- щелкните исполняемый файл, который он запускает, если я создаю файл .BAT в другом каталоге, который меняет рабочий каталог на каталог модели, и вызываю исполняемый файл, он запускается, когда я дважды щелкаю по файлу .BAT, но не когда файл .BATвызывается с использованием subprocess.call () или subprocess.popen (), аналогично приведенному выше сценарию.

Я предполагаю, что это как-то связано с переменными среды, но я не уверен, с чего начать.

...