python子进程定位可执行路径

python子进程定位可执行路径,python,windows,Python,Windows,如何告诉子流程它应该在哪个目录中查找要运行的可执行文件? 我读过,但我不想修改当前进程的env变量,至少我想非常小心地做——调用后立即恢复。原因是我在win64操作系统上运行了两个同名x86、x64版本的同一应用程序版本,因此我希望有固定的命令行字符串来执行工具,并更改“选择正确版本”的搜索路径。解决我的问题最安全的方法是什么? 下面是一个示例代码,以加深您的理解: command_line = 'myapp -param=10 -param2=20' exec_app(command_line

如何告诉子流程它应该在哪个目录中查找要运行的可执行文件? 我读过,但我不想修改当前进程的env变量,至少我想非常小心地做——调用后立即恢复。原因是我在win64操作系统上运行了两个同名x86、x64版本的同一应用程序版本,因此我希望有固定的命令行字符串来执行工具,并更改“选择正确版本”的搜索路径。解决我的问题最安全的方法是什么? 下面是一个示例代码,以加深您的理解:

command_line = 'myapp -param=10 -param2=20'
exec_app(command_line, PLATFORM_WIN64)
exec_app(command_line, PLATFORM_WIN32)
解决我的问题最安全的方法是什么

通过一条绝对路径。您负责可执行文件的位置。将该逻辑构建到Python代码中,形成完整的绝对路径,并使用它

解决我的问题最安全的方法是什么


通过一条绝对路径。您负责可执行文件的位置。将该逻辑构建到Python代码中,形成完整的绝对路径,然后使用它。

有什么原因不能使用绝对路径吗?是的,有一个原因。问题是,有几种工具。和exec_应用程序,通常从项目中的不同功能调用。所以,每次为执行工具构造命令行时,exec_应用程序的客户端都必须将PLATFORM_ID值映射到应用程序目录。我只想在exec_应用程序内移动此逻辑。我已决定在exec_应用程序内动态修补命令行,以向应用程序添加目录路径。它有点脏,但应该工作得很好。有什么原因不能使用绝对路径吗?是的,有一个原因。问题是,有几种工具。和exec_应用程序,通常从项目中的不同功能调用。所以,每次为执行工具构造命令行时,exec_应用程序的客户端都必须将PLATFORM_ID值映射到应用程序目录。我只想在exec_应用程序内移动此逻辑。我已决定在exec_应用程序内动态修补命令行,以向应用程序添加目录路径。它有点脏,但应该能用得很好。