#c_sharp #windows #файлы #path
Программа не видит путь к файлу C:\Windows\System32\nslookup.exe Проверка естественно всегда выдает "Путь не найден". То же самое происходит и например с путем к фалу notepad.exe в этой же папке, но при этом если обратиться к файлу C:\Windows\twin_32.dll то программа его находит. Подскажите куда копать? Нужно назначить текущего пользователя владельцем папки System32? if (File.Exists(@"C:\Windows\System32\nslookup.exe")) { Console.WriteLine("Путь найден"); } else Console.WriteLine("Путь не найден");
Ответы
Ответ 1
Дело в File System Redirector'е (https://msdn.microsoft.com/en-us/library/windows/desktop/aa384187(v=vs.85).aspx) Если кратко, %windir%\System32 - для 64-битных приложений. 32-битные приложения система перенаправляет в %windir%\SysWOW64 где вашего файла вполне может и не быть.Ответ 2
Используйте путь из переменных окружения if (File.Exists(Path.Combine(Environment.SystemDirectory, "nslookup.exe"))) { Console.WriteLine("Путь найден"); } else Console.WriteLine("Путь не найден");
Комментариев нет:
Отправить комментарий