2009-11-09 4 views
4

Я использую встроенные функции My.Settings в VB.NET для сохранения настроек приложения.Потеря VB.NET «My.Settings» с каждым новым развертыванием развертывания ClickOnce

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

Почему и как я могу предотвратить это?

+0

Попытка уточнить. Вы используете встроенные параметры на вкладке «Настройки» на странице свойств вашего проекта. Каково значение «Объем» для ваших настроек - «Приложение» или «Пользователь»? – codeConcussion

+0

hmmm. Я предположил (и все еще подозреваю), что настройки находятся в области пользователя. Как я могу сказать? – ChadD

+0

Я нашел его. Да, это в области пользователя. – ChadD

ответ

9

Вам необходимо обновить вручную в настройках приложения, я использую этот простой метод:

  • Создать логическое представление под названием MustUpgrade, объем пользователя, по умолчанию в True.

Затем напишите способ проверки необходимости обновления My.Settings и вызова метода Update(), если это так. Отметьте свои настройки как обновленные, и сохраните. Назовите это где-нибудь в вашей загрузке приложения. Метод Upgrade() обновит настройки в новом формате и перенесет существующие значения.

Sub UpgradeMySetings() 
    If My.Settings.MustUpgrade Then 
     My.Settings.Upgrade() 
     My.Settings.MustUpgrade = False 
     My.Settings.Save() 
    End If 
End Sub 
+0

Интересно ... Как установить значение по умолчанию для настройки свойств? Вкладка «Параметры» диалогового окна «Свойства приложения», похоже, не поддерживает его. Мне интересно, будет ли это вредно для u [оценка безусловно ... – ChadD

+0

В свойствах проекта на вкладке «Параметры» отображается сетка, в которой вы можете определить свои параметры приложения. Последний столбец (значение) является значением по умолчанию. Введите «True» в эту ячейку. То же самое в 2005 и 2008 годах, больше информации на http://msdn.microsoft.com/en-us/library/25zf0ze8.aspx – invert

+0

А, конечно. Манекен/слепой. – ChadD

Смежные вопросы