为什么可执行程序将停止在python中使用popen

问题描述 投票:0回答:1

我一直在使用必须放在包含输入的目录中的可执行文件来运行流模型。我使用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资源管理器并双击它运行的可执行文件,如果我在另一个目录中创建一个.BAT文件,该目录将工作目录更改为模型目录并调用该可执行文件,则当我双击.BAT文件时它将运行。 ,但使用类似于上述脚本的subprocess.call()或subprocess.popen()调用.BAT文件时,则不会。

我猜它与环境变量有关,但是我不确定从哪里开始。

python-2.7 subprocess popen
1个回答
0
投票

我联系了开发人员,并能够确定解决方案。就我而言,缺少导致问题的DLL。

© www.soinside.com 2019 - 2024. All rights reserved.