路径不运行
我想从进程名的完整路径,而不运行process.In otherwords-其中C#得到,当它正在执行下列绝对路径:路径不运行
的Process.Start(StartInfo的);
startInfo不包含绝对路径。
可执行文件的完整路径通过%PATH%环境变量解决。您可以按如下方式复制行为:
var result = Environment.GetEnvironmentVariable("PATH")
.Split(';')
.Select(path => Path.Combine(path, "notepad.exe"))
.FirstOrDefault(path => File.Exists(path));
// result == "C:\\Windows\\system32\\notepad.exe"
您还必须检查当前目录。 –
使用标准Windows搜索策略:PATH环境变量中的当前文件夹和文件夹。
也许我误解了,但怎么样:
var fInfo = new FileInfo(startInfo.FileName);
var fullPath = fInfo.FullName;
?
我知道进程名称abc.exe。我想知道它的绝对路径。但不想运行它。 – user743246
我编辑后看到了吗? – y0uri
所以你只想要'WHERE'命令的C#等价物? – Gabe
例如:我知道进程名称abc.exe。我想知道它的绝对路径。但不想运行它。 – user743246
您可以使用'Process.Start'来执行Windows的'WHERE'命令,并读取输出。 –