Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/18: Рейтинг темы: голосов - 18, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 06.09.2016
Сообщений: 12

Почему не сохраняются значения в settings.settings или как хранить параметры в самой программе?

04.05.2019, 12:42. Показов 3570. Ответов 4

Студворк — интернет-сервис помощи студентам
В общем, храню пользовательские параметры в файле Properties->Settings.setting проекта win forms c#.
Работаю в программе в одной директории - все идеально сохраняется, но при перемещении в другую директорию, settings.settings зануляется. Что делать? Нельзя как-нибудь по-другому хранить данные в программе, чтобы они не занулялись при перемещении exe файла в друггое место на компе?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.05.2019, 12:42
Ответы с готовыми решениями:

Нельзя привести setting из Settings.settings к типу FileSystemInfo
Доброго дня форумчанам :) Столкнулся со следующей проблемой: при попытке сохранить адрес последнего файла в настройках как есть (в...

Левый хеш в имени папки для Settings.settings
ЧТо это в конце ?? и как его убрать ?

Как сбросить Properties.Settings на значения по умолчанию
Добрый день! Настройки программы хранятся в namespace.Properties.Settings; Подскажите, можно ли как-то сбрасывать данные...

4
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
04.05.2019, 12:46
Лучший ответ Сообщение было отмечено nomerochek как решение

Решение

Папка, в которой хранятся настройки, зависит от папки, в которой лежит приложение.
Это сделано специально для возможности разворачивать несколько копий приложения на одной системе.
Если вам надо двигать приложение взад-назад, то реализуйте свой SettingsProvider и сохраняйте настройки где вам нужно.
1
0 / 0 / 0
Регистрация: 06.09.2016
Сообщений: 12
04.05.2019, 14:24  [ТС]
А где я могу найти свойсво Provider для настроек?
Пытаюсь сделать как здесь
Изображения
 
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
04.05.2019, 15:38
Лучший ответ Сообщение было отмечено nomerochek как решение

Решение

Цитата Сообщение от nomerochek Посмотреть сообщение
А где я могу найти свойсво Provider для настроек?
Перво-наперво реализуйте свой провайдер, унаследовавшись от класса SettingsProvider.
Там надо переопределить два метода: GetPropertyValues, который считывает настройки из хранилища; и SetPropertyValues, который их сохраняет в хранилище.
Хранилище может быть любым, в зависимости от вашей реализации: файл, реестр, база данных и т.д.

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

Чтобы применить ко всем настройкам, откройте файл Settings.settings в дизайнере и вверху жамкните по View Code (у меня английская студия, у вас будет какой-то русский аналог):


Откроется файл с кодом, вам надо к классу настроек применить атрибут SettingsProvider, указав в нем тип вашего провайдера:


Чтобы сохранять только определенные настройки с использованием вашего провайдера, выделите эту настройку в дизайнере и в панеле свойств пропишите в поле Provider имя своего провайдера:
1
Эксперт .NETАвтор FAQ
 Аватар для Storm23
10427 / 5157 / 1825
Регистрация: 11.01.2015
Сообщений: 6,226
Записей в блоге: 34
04.05.2019, 19:21
Цитата Сообщение от nomerochek Посмотреть сообщение
Нельзя как-нибудь по-другому хранить данные в программе, чтобы они не занулялись при перемещении exe файла в друггое место на компе?
Если вы подпишите приложение (signing) то файл настроек не будет зависеть от расположения exe на диске.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.05.2019, 19:21
Помогаю со студенческими работами здесь

Как сделать чтобы текст введённый в richTextBox сохранялся в Settings.settings?
Сценарий Открыл форму 1-ый раз. Ввёл в "richTextBox1" текст "Текст 1" Закрыл форму. Открыл форму 2-ой раз. В...

Не могу найти папку C:\Documents and Settings\Администратор\Local Settings\Temp\Временные файлы Интернета
не могу найти папку C:\Documents and Settings\Администратор\Local Settings\Temp\Временные файлы Интернета\,тоесть открываю скрытые файлы и...

Сохранение элементов comboBox в Settings.settings
Доброго времени суток, форумчане! Делаю простенькую программу, но столкнулся с проблемой. Мне нужно сохранять все данные из...

Не сохраняются настройки в Nvidia Settings после обновления драйвера
Помогите, пожалуйста! Каждый раз, как только выходит новая версия драйвера Nvidia, я обновляю и после перезагрузки компа все предыдущие...

Сохранение SortedList в Settings.Settings
Здравствуйте дорогие форумчане. Возникла проблема с сохранением SortedList в Settings.Settings вроде все как обычно но возникли...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru