Меню

Где сохраняются настройки программ



Как узнать, где программа хранит свои настройки в реестре

Описание

Часто возникает необходимость узнать, где та или иная программа (приложение) хранят свои настройки в реестре Windows. Бывает, что поиск по реестру не дает никаких результатов, или же программа хранит свои настройки не в одной какой-либо ветке реестра, а в нескольких и нужно их все найти, чтобы посмотреть/поменять настройки или сделать их резервную копию. В данной статье мы рассмотрим как это можно сделать.

Как узнать, где программа хранит свои настройки в реестре

Для того, чтобы узнать к каким разделам реестра обращается программа в процессе работы, мы воспользуемся бесплатным инструментом под названием Process Monitor, который можно скачать с официального сайта по следующей ссылке: https://download.sysinternals.com/files/ProcessMonitor.zip

После скачивания и распаковки архива можно обнаружить два exe файла: Procmon.exe и Procmon64.exe

После первого запуска, программа предложит нам принять условия лицензионного соглашения, поэтому не забываем нажать кнопочку «Agree«


Для примера посмотрим к каким разделам реестра обращается стандартный графический редактор Paint, который присутствует в ОС Windows. Для этого сначала запускаем Process Monitor, а после этого интересующее нас приложение, в данном примере графический редактор Paint. Далее, в диспетчере смотрим как именно называется исполняемый файл, в случае с Пейнтом, он называется mspaint.exe .

Чтобы отфильтровать все ненужные записи от любых других приложений, мы включим фильтр, в котором укажем, что хотим видеть только активность, которая вызвана процессом mspaint.exe , для этого мы выбираем пункт меню «Filter» и в нем опцию с одноименным названием «Filter. «.

После чего выбираем из раскрывающегося меню пункт «Process Name«, вписываем имя нужного нам процесса mspaint.exe и жмем на кнопку «Add«, чтобы наш фильтр добавился:

Читайте также:  Программа настройки температуры монитора

Теперь осталось применить фильтр, чтобы все посторонние записи не отображались. Для этого жмем на кнопку «Apply» и потом на «OK«, для закрытия окна настроек.

В результате перед нами будет вся информация о том, к каким конкретно разделам и ключам реестра обращается mspaint.exe в процессе своей работы:

Теперь можно закрыть редактор Paint и посмотреть куда он записывает все свои настройки, после завершения работы. Они будут также отображаться в окне Process Monitor, достаточно просто воспользоваться скроллом. Таким не хитрым способом, можно мониторить любой процесс и точно знать как и где он хранит информацию.

Источник

C#, способы хранения настроек программы

Введение

В интернете приведено очень много способов хранения настроек программы, но все они как-то разбросаны, поэтому я решил их собрать вместе и расписать, как этим пользоваться.

C# и app.config

На хабре уже была посвящена этому тема, поэтому… перейти

C# и Properties.Settings

Информация о Properties.Settings

Организация Properties.Settings — это обычный xml файл, который можно найти в папке пользователя:

С:\ Users \ [user name] \ AppData \ Local \ [ (Project Name) or (AssemblyCompany) ] \ [name project_cashBuild] \ [AssemblyVersion] \ user.config

Для начала нам нужно создать такие переменные для Properties.Settings. Перейдем в Properties -> Settings.settings:

Я создал 3-и переменные и выбрал область их использования: 2- область пользователь и 1- приложение.

Различие между областями просты. Область приложения можно только читать, а пользователь — изменять и читать.

Вернемся к переменным:

  • Version — версия нашей программы. Определил ее строкой и областью приложение. Т.к. версия может содержать буквы (например, b — от beta). А область выбрал, чтоб не менялась наша версия приложения (т.к. AssemblyVersion редко кто использует).
  • Save_text — это переменная, куда мы будем сохранять наш текст.
  • open_sum — сколько раз мы открыли программу.
Читайте также:  Программа для настройки реалтек звуковых карт

Теперь перейдем к коду

Результаты работы программы

Первый запуск, мы видим, что кол-во запусков равно 1. И теста в richTextBox1 нет.

Теперь напишем и сохраним текст.

При втором запуске мы видим, что текст сохранен, и кол-во запусков уже 2-ва.

Очень удобно использовать этот объект, если надо работать в разных областях видимости в одном проекте. Метод хорош, когда вам не надо, чтоб рядовой пользователь рылся в файлах настройки программы.

C# и ini-файлы

С ini-файлами все на оборот, они лежат в папке рядом с программой, что позволяет пользователю изменить настройки вне-программы. Данный способ хорош, если настройки программы заносятся вручную. Например, эмулятор для запуска игры без лицензии (тотже revLoader).

Теперь перейдем к нашей теме. Для работы с таким типом файлов, нам нужно создать класс по работе с ним. Создаем класс, например «IniFile», подключаем пространство имен, которых нет:

А теперь разбираем по-порядку:

Теперь переходим в основную программу.

Результаты работы программы

При первом запуска, у нас нет файла config.ini. Поэтому при проверке возвращаются fasle и мы приравниваем окно к минимальным параметрам.

Меняем параметры окна и жмем «Применить»

Редактируем файл config.ini руками и жмем загрузить.

На этом все, в следующий раз опишу работу с xml файлами и с бинарными файлами.

Источник

Adblock
detector