Python(Portable 2.5)子进程报告问题“WindowsError:[错误3]系统找不到指定的路径”

Python (Portable 2.5) subprocess report problem “WindowsError: [Error 3] The system cannot find the path specified”

我正在使用python,代码都适用于非便携版本。 因为我需要在某些不属于我的计算机上运行程序,而这些计算机没有安装python或者这样的选项可用。
我使用便携式python代替。 但是,以前的代码现在运行良好,报告错误"WindowsError:[错误3]系统无法找到指定的路径"。 我在电脑上查了一下。 它运行顺利,没有上述错误。 任何人都可以提供线索?

我使用的cmd是:

p = subprocess.Popen(self.cmdStr,shell = False,stdout = subprocess.PIPE,stderr = file)

我正在将stderr重定向到我指定的文件。

我也在网上搜索。 似乎存在"子进程PATH语义和可移植性"的问题。 我不确定这是不是这个原因。 请帮忙。 谢谢。


啊,问题出在cmdStr变量中。 您必须使用绝对路径,否则让正在运行进程的用户具有适当的设置PATH系统变量。 或者你有shell = False,这可能会导致子进程模块出现问题。 检查文档中有关路径等问题。


subprocess.Popen(r"C: Python27 python.exe",shell = True)可以正常工作。


'cmd / c cmdstr'可以在Windows上正常运行吗?