我之前看过一个非常类似的问题videos/update
,但答案线程已经崩溃了。基本上,我安装了Python(并检查了添加到Path变量的选项),确认它确实在路径变量中(通过环境变量窗口,就像你通常那样)。
当手动打开cmd窗口时,我可以输入python -V并返回版本,其他任何东西都可以,并且一切正常,python确实是通过命令提示符(手动打开时)公开的。
但是,当我尝试使用带有C#应用程序的cmd.exe运行命令时,我得到了
'python'未被识别为内部或外部命令, 可操作程序或批处理文件。
我有C#代码块
var proc = new Process();
var startInfo = new ProcessStartInfo
{
UseShellExecute = true,
FileName = "cmd.exe",
Arguments = "/K " + command
};
proc.StartInfo = startInfo;
proc.Start();
这在过去运作良好。但是我将我的工作机器升级到Windows 10并且一直在努力使这个工作。
由于应用程序在我的Windows升级之前工作,命令文本没有改变,如果我拿它的文本并通过手动打开的命令提示符运行它没有问题。所以我很犹豫,相信这是命令本身的一个问题。
更新:如果我在常规提示中运行echo%PATH%,我会看到python,如果我在命令提示符下运行它,我的应用程序打开,我没有。我尝试使用set PATH,但这没有帮助。为什么我手动打开的命令提示符和我的应用程序打开的命令提示符之间的PATH变量不同?
我认为它可能与具有自己路径的用户和系统变量有关,但是当通过系统属性检查时,Python在两者中都有,所以我很茫然。