Программа не видит путь к файлу C:\Windows\ System32\nslookup.exe

468
21 ноября 2017, 21:01

Программа не видит путь к файлу 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("Путь не найден");
Answer 1

Дело в File System Redirector'е (https://msdn.microsoft.com/en-us/library/windows/desktop/aa384187(v=vs.85).aspx)

Если кратко, %windir%\System32 - для 64-битных приложений. 32-битные приложения система перенаправляет в %windir%\SysWOW64 где вашего файла вполне может и не быть.

Answer 2

Используйте путь из переменных окружения

if (File.Exists(Path.Combine(Environment.SystemDirectory, "nslookup.exe")))
{
    Console.WriteLine("Путь найден");
}
else Console.WriteLine("Путь не найден");
READ ALSO
Как правильно зашифровать параметр в URL

Как правильно зашифровать параметр в URL

Добрый день! Есть MVC сайтДля просмотра некоторой информации, передаются в строке uRL 2 параметра: а) лицевой счет, б) номер телефона, таким образом:

419
Как получить скриншот свернутого opengl окна при помощи c#

Как получить скриншот свернутого opengl окна при помощи c#

Всем приветПодскажите пожалуйста как получить скриншот свернутого opengl окна при помощи языка c#

416
Как сделать систему чекпоинтов в Unity3D?

Как сделать систему чекпоинтов в Unity3D?

Нужно сделать так, чтобы при подборе чекпоинта сохранялось текущее состояние сцены, чтобы потом его можно было загрузить при смерти игрокаДопустим,...

379