C# 找不到Windows默认shell和路径

C# 找不到Windows默认shell和路径,c#,python,windows,shell,path,C#,Python,Windows,Shell,Path,我已经用我的应用程序更改了Windows默认shell,一切正常。 我的应用程序是在c#中,我需要运行一些外部python脚本,下面是错误,因为找不到Path变量 我已尝试设置已启动进程的路径: process.StartInfo.EnvironmentVariables["PATH"] = "c:\\Python27;c:\\Python27\\Scripts"; 这根本不管用 问题是没有加载PATH变量,因为我已经更改了默认的windows shell,所以出现了explorer.ex

我已经用我的应用程序更改了Windows默认shell,一切正常。 我的应用程序是在c#中,我需要运行一些外部python脚本,下面是错误,因为找不到Path变量

我已尝试设置已启动进程的路径:

  process.StartInfo.EnvironmentVariables["PATH"] = "c:\\Python27;c:\\Python27\\Scripts";
这根本不管用

问题是没有加载PATH变量,因为我已经更改了默认的windows shell,所以出现了explorer.exe文件


谢谢。

在我的windows安装中,path变量是“path”而不是“path”,这可能是导致问题的原因吗?我尝试过,但得到了相同的结果。您的意思是,您遇到问题的应用程序是替换外壳,即正在启动而不是windows资源管理器?我认为您可能需要P/Invoke CreateEnvironmentBlock()并将输出输入StartInfo.EnvironmentVariables。(您发布的代码行最可能存在的问题是,它不包括其他必需的文件夹,如c:\windows\system32。但最好是查找已配置的环境变量,而不是使用常量字符串。)