Где хранятся настройки My.Settings в VB 2010 .NET? - PullRequest
16 голосов
/ 01 января 2012

Сохраняются ли значения My.Settings в самой программе или они хранятся в реестре?Так, например, если я устанавливаю значение My.Settings с помощью программы, то я копирую саму программу на другой компьютер - значение My.Settings все еще установлено?

Ответы [ 4 ]

30 голосов
/ 01 января 2012

Это зависит от выбранной области действия .Существует две настройки области: «Область приложения» и «Пользователь».

Из статьи MSDN:

Настройки области приложения доступны только для чтения и доступны всем пользователям.этого приложения.Эти настройки хранятся в файле app.config в разделе.Во время выполнения файл app.config будет находиться в папке bin и будет именоваться именем вашего приложения (MySettingsDemo.exe.config).

Настройки области действия пользователя предназначены длякаждый пользователь.Они могут быть прочитаны и безопасно установлены кодом приложения во время выполнения.Эти настройки хранятся в файле user.config.Если быть технически точным, то для каждого приложения существует два user.configs - одно для не роуминга и другое для роуминга.Хотя в документации по Visual Basic 2005 указано, что файл user.config будет именоваться в соответствии с именем пользователя (joe.config), это не так.Файл user.config создается в:

<c:\Documents and Settings>\<username>\[LocalSettings\]ApplicationData\<companyname>\<appdomainname>_<eid>_<hash>\<verison>.
6 голосов
/ 02 декабря 2015
Dim config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal)
MessageBox.Show(config.FilePath)
4 голосов
/ 01 января 2012

Если вы установили свое приложение, используя clickonce, тогда ваши MySettings будут сохранены в файле конфигурации, который хранится в C: \ Users \\ AppData \ Local \ Apps \ 2.0 \ Data ........

поиск по этим путям в файле с именем yourapp.exe.config

Дело в том, что MySettings будет сохранен в файле app.config этого приложения, и после публикации файл app.config будет сохраненкак файл applicationname.exe.config

3 голосов
/ 01 января 2012

Они определенно не хранятся в программе, если они пользовательские настройки - это не очень легко реализовать и довольно бессмысленно. Скорее они хранятся в файле конфигурации в папке% AppData%. Так что нет, если вы скопировали программу, пользовательские настройки не были бы включены в нее, только настройки приложения.

...