c# Process.Start() 方法如何自动知道文件所在的位置?
c# How does Process.Start() method automatically know where files are located?
如果我向 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)
}
}
}
我认为这取决于Windows中的环境变量。
或在 cmd 中输入 PATH 并观察路径,其中可以自动找到 *.exe 文件。
如果我向 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)
}
}
}
我认为这取决于Windows中的环境变量。 或在 cmd 中输入 PATH 并观察路径,其中可以自动找到 *.exe 文件。