Ошибка при запуске приложения через \Local Settings\Application Data\ в Windows 7

Простой код:

 ProcessStartInfo psi = new ProcessStartInfo(path);
 psi.UseShellExecute = false;
 Process.Start(psi);

если путь = C:\Users\Marat\AppData\Local\MyCompany\Program.exe, все в порядке!

но если путь = C:\Users\Marat\Local Settings\Application Data\MyCompany\Program.exe

получить исключение:

System.ComponentModel.Win32Exception (0x80004005): был сделан неверный запрос имени. Запрошенное имя не может быть получено в настоящее время

На самом деле все работало нормально, но в какой-то момент стало выдавать эту ошибку.

1 ответ

Насколько я помню, папка Local Settings в Windows 7 - это ссылка на папку AppData, которая в основном используется для совместимости со старыми приложениями, предшествующими Windows Vista, на самом деле вы не можете получить к ней прямой доступ, если не смените владельца этой ссылки (Это система), поэтому, вероятно, именно поэтому вы получаете эту ошибку.

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

Другие вопросы по тегам