Путь от имени процесса, который НЕ работает - PullRequest
0 голосов
/ 30 ноября 2011

Я хочу получить полный путь от имени процесса БЕЗ запуска процесса. Другими словами, где C # получает абсолютный путь, когда он выполняет следующее:

Process.Start (startInfo);

startInfo не содержит абсолютный путь.

Ответы [ 3 ]

2 голосов
/ 30 ноября 2011

Полный путь к исполняемому файлу разрешается с помощью переменной среды% 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"
0 голосов
/ 30 ноября 2011

Возможно, я неправильно понял, но как насчет:

var fInfo = new FileInfo(startInfo.FileName);
var fullPath = fInfo.FullName;

0 голосов
/ 30 ноября 2011

Использует стандартную политику поиска Windows: текущая папка и папки в переменной среды PATH.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...