Проверьте, существует ли исполняемый файл в пути WindowsC#

Место общения программистов C#
Ответить
Anonymous
 Проверьте, существует ли исполняемый файл в пути Windows

Сообщение Anonymous »

Если я запускаю процесс с помощью ShellExecute (или в .net с помощью System.Diagnostics.Process.Start()), имя файла для запуска процесса не обязательно должно быть полным путем.< /p>
Если я хочу запустить блокнот, я могу использовать

Код: Выделить всё

Process.Start("notepad.exe");
вместо

Код: Выделить всё

Process.Start(@"c:\windows\system32\notepad.exe");
потому что каталог c:\windows\system32 является частью переменной среды PATH.
как я могу проверить, является ли файл существует в PATH без выполнения процесса и без анализа переменной PATH?

Код: Выделить всё

System.IO.File.Exists("notepad.exe"); // returns false
(new System.IO.FileInfo("notepad.exe")).Exists; // returns false
но мне нужно что-то вроде этого:

Код: Выделить всё

System.IO.File.ExistsOnPath("notepad.exe"); // should return true
и

Код: Выделить всё

System.IO.File.GetFullPath("notepad.exe"); // (like unix which cmd) should return
// c:\windows\system32\notepad.exe
Есть ли в BCL предопределенный класс для выполнения этой задачи?

Подробнее здесь: https://stackoverflow.com/questions/385 ... ndows-path
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»