c#Process.Start()方法如何自动知道文件的位置?

时间:2015-01-31 18:42:19

标签: c# directory process.start

如果我提供Process.Start();参数"Firefox"Notepad"cmd"它会运行这些程序,就像它们的位置是内置的,但是对于其他程序,我必须指定程序的目录,让它工作。

它如何自动知道某些程序的位置,以及为什么只有那些程序而不是其他程序?

我的代码:

using System;
using System.Diagnostics;

namespace Testing
{
 public class MainClass
 {
   static void Main()
   {
      Process.Start("Firefox");    // Works
      Process.Start("Notepad");    // Works 
      Process.Start(@"C:\Users\user\Desktop\Steam");   // Works too
      Process.Start("Steam");      // This line gives me "The System cannot find the file specified"(run-time error)
    }
  }
}

1 个答案:

答案 0 :(得分:2)

我认为这取决于Windows中的环境变量。 或在cmd中键入 PATH 并观察路径,其中* .exe文件可以自动找到。