Настройки C #.Как определяется путь для appdata? - PullRequest
2 голосов
/ 29 июля 2011

Ради этого вопроса предположим Vista или Win 7 OS.Я пишу приложение, которое является консольным приложением, но с графическим интерфейсом пользователя для настройки параметров.Эта программа вызывается и используется другим приложением.

Теперь, когда я запускаю отладку, файл конфигурации сохраняется на C:\Users\gpearson\AppData\Local\LameCooter\ReFLAC.vshost.exe_Url_n0ekhuv0sj03zsscwvzaubkqj0rny1jg\1.0.1.0\user.config, но когда внешнее приложение запускает мои программы, файл конфигурации ищется на C:\Users\gpearson\AppData\Local\LameCooter\reflac.exe_Url_wkb5qtqxm1o4a0d42yibofh0l0x3wu3k\1.0.1.0\user.config, разница составляет:
путь #1: ReFLAC.vshost.exe_Url_n0ekhuv0sj03zsscwvzaubkqj0rny1jg
путь № 2: reflac.exe_Url_wkb5qtqxm1o4a0d42yibofh0l0x3wu3k
Почему разница?
Вся документация, которую я могу найти, говорит, что путь будет ... \ AppData \ Local \ Название компании / Название программы \ Версия программы \ user.config

Ответы [ 2 ]

3 голосов
/ 29 июля 2011

Это связано с тем, что Visual Studio создает другой файл .exe, который облегчает отладку, называется файлом VSHOST (например, MyApp.vshost.exe).Это становится вашим exe при запуске в режиме отладки.В то время как в нормальном / серийном / выпускном коде у вас есть только один .exe-файл.Вот почему вы видите это неравенство.

0 голосов
/ 29 июля 2011

Функция vshost.exe была представлена ​​в VS2005. Он призван сделать запуск отладки очень быстрым.

Так вот почему при запуске Console.Write ( System.AppDomain.CurrentDomain.FriendlyName ) из отладчика вы получаете app.vshost.exe запустить прямо из exe-файла, который вы получите в виде app.exe

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