无法通过 Python win32Process.Create 进程 运行 CMD 命令

can't run CMD command through Python win32Process.Create Process

这个问题让我发疯,因为我尝试解决它 3 天了,但没有成功。

我有一个 python 脚本可以自动执行一些操作,它的主要目标之一是 运行 cmd 命令,只要用户需要这个(用户想要打印一些东西到控制台)作为例子

PyH1,PyH2,i1,i2 = win32process.CreateProcess(None,Command ,None,None,1,\ CreationFlag,\ None,None,PySTARTUPINFO)

报错pywintypes.error: (2, 'CreateProcess', 'The system cannot find the file specified.')

我只是通过 CreateProcess 第二个参数中的 python command 变量将 "echo Hello World" 发送到 cmd。

我的操作系统是Win7(x64)

Python 版本:Python 3.6.4(v3.6.4:d48eceb,2017 年 12 月 19 日,06:54:40)[MSC v.1900 64 位( AMD64)] 在 win32

我尝试重新安装 Pywin(32 和 64)都没有用,我很困惑,哪个文件不存在,因为我不提供也不需要任何文件!!

我试图在 Windows 环境变量中包含 cmd 路径,但没有成功。

我试图包含一个记事本路径而不是我原来的 echo hello world,它可以正常打开记事本,所以 CreateProcess 没有因任何原因损坏。

我的机器上还有另一个 Python 版本 Python 2.7.10(默认,2015 年 5 月 23 日,09:44:00)[MSC v.1500 64 位 (AMD64)] on win32

我应该在哪里查看,是 64/32 位问题还是更多问题!

非常感谢您的帮助,在此先感谢您。

尝试将 cmd.exe 作为第一个参数传递给 CreateProcess,将 /c "echo Hello world" 作为第二个参数传递

或将第一个保留为 None 并传递到第二个完整的 cmd 行:cmd.exe /c "echo Hello world"