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

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

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

Author24 — интернет-сервис помощи студентам
В общем, храню пользовательские параметры в файле 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
17810 / 12961 / 3381
Регистрация: 17.09.2011
Сообщений: 21,250
04.05.2019, 12:46
Лучший ответ Сообщение было отмечено nomerochek как решение

Решение

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

Решение

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

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

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


Откроется файл с кодом, вам надо к классу настроек применить атрибут SettingsProvider, указав в нем тип вашего провайдера:
Почему не сохраняются значения в settings.settings или как хранить параметры в самой программе?


Чтобы сохранять только определенные настройки с использованием вашего провайдера, выделите эту настройку в дизайнере и в панеле свойств пропишите в поле Provider имя своего провайдера:
Почему не сохраняются значения в settings.settings или как хранить параметры в самой программе?
1
Эксперт .NETАвтор FAQ
 Аватар для Storm23
10421 / 5151 / 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
Ответ Создать тему
Новые блоги и статьи
Миграция монолита в Event-Driven микросервисную архитектуру на C#
stackOverflow 11.04.2025
Монолитная архитектура – классический подход к разработке программного обеспечения. Это приложение, построенное как единое целое, где все компоненты тесно связаны между собой. Большинство проектов. . .
Go в Kubernetes: Управление ресурсами
golander 11.04.2025
Разработчики Go-приложений в Kubernetes часто сталкиваются с неожиданными проблемами производительности и даже внезапными отказами контейнеров. Причина этого кроется в особенностях взаимодействия. . .
Агрегаты и сущности в DDD микросервисах
Javaican 10.04.2025
Разработка современных программных систем часто приводит на распутье: монолит или микросервисы? Даже при выборе микросервисной архитектуры многие команды сталкиваются с проблемой правильного. . .
Многопоточность в C#: Task и параллельное программирование
UnmanagedCoder 10.04.2025
Современные процессоры уже давно перестали наращивать тактовую частоту в пользу увеличения количества ядер. Это создало интересную ситуацию: разработчики, привыкшие к последовательному. . .
Линейное решение нелинейной задачи будет иметь приблизительный результат вычисления для метода обработки данных из double buffering.
Hrethgir 10.04.2025
В продолжение Вообще задача стояла не так остро - 1. Во вторых прямое соотношение углов через соотношения координат отрезков - невозможно. Но тем не менее. Эта LM дала ответ похожий на нормальный. . . .
Переменные в Python
py-thonny 10.04.2025
Переменная в программировании — это символическое имя, связанное с областью памяти, в которой хранится значение. Она позволяет получать доступ к данным через понятные человеку идентификаторы, а не. . .
Многопоточность в C#: Task и асинхронные операции
UnmanagedCoder 10.04.2025
Многопоточность позволяет выполнять несколько операций одновременно, что важно для решения двух основных задач: повышения скорости выполнения вычислительно-сложных операций и сохранения отзывчивости. . .
Линейное решение не линейной задачи (емкость вычислений в сравнении с традиционными решениями пока не определена).
Hrethgir 10.04.2025
В рамках предстоящих вычислений пришлось (да, я тоже знаю про корень числа, и про степеня, и прочие теоремы, но. . . ) найти способ нахождения отношения двух углов. . . .
Запуск контейнеров Docker на ARM64
Mr. Docker 09.04.2025
Появление таких решений, как Apple M1/ M2, AWS Graviton, Ampere Altra и Raspberry Pi, сделало использование ARM-систем обыденностью для многих разработчиков и DevOps-инженеров. При этом Docker,. . .
Vue SFC компонент на PHP с Fusion
Jason-Webb 09.04.2025
PHP на сервере и JavaScript на клиенте — классическое сочетание, которое, несмотря на свою эффективность, создает определенный когнитивный диссонанс при разработке. В этом контексте появляются. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер