如何在当前cmd.exe上下文中执行shell命令?

时间:2013-08-12 19:30:33

标签: c# .net shell path cmd

所以,我有一个.Net实用程序。我需要在PATH变量中使用有时的实用程序(ilasm和ildasm),有时不使用。路径中的特定时间包括使用Visual Studio命令行脚本时...以及何时不启动常规cmd.exe实例。

我从.Net执行shell命令时看到的所有信息都暗示您可以创建一个新的cmd.exe实例,但在这种情况下,PATH变量会有所不同。另一个可能的事情是手动解析PATH变量并在找到时直接用ProcessStartInfo执行它,但这似乎容易出错且不必要

是否有工具或任何可以帮助我解决这种情况的工具?我应该如何执行这些实用程序?

1 个答案:

答案 0 :(得分:0)

启动cmd.exe时,可以设置其环境路径:

 var psi = new ProcessStartInfo("cmd.exe");
 psi.UseShellExecute = false;
 psi.EnvironmentVariables["path"] = "mypath";
 Process.Start(psi);

请在downvote之前发表评论。