http://tikitak.narod.ru ---- Главная страница сайта
Шаг 39 - Работа с реестром
Создание проекта
Воспользуемся тем же, что и предыдущий.
На данный момент идеология хранения информации о программе изменилась. Ранее в версиях Windows 3.x данные о настройке программ хранились в файлах INI, в версиях Windows 9X используется системный реестр. Работа с системным реестром может осуществляться, как из программ, так и с помощью специальной программы REGEDIT. Эта программа позволяет редактировать реестр вручную. Боже упаси Вас редактировать его, результат может быть похож на взрыв бомбы, как в плохом смылсе, так и в хорошем. Если Вы ранее не работали с реестром не отступайте от моих шагов ни на шаг, извините за каламбур. Запустить REGEDIT можно через Start(пуск), далее Run(выполнить) набрать REGEDIT и нажать OK.
И так данные Вашей программы должны храниться в разделе ресстра HKEY_CURRENT_USER\Software\. Дальше должно идти имя вашей компании. Вот его и нет. Поэтому мы его должны создать. Правую кнопку мышки на Software Новый и ключ. Как на рисунке ниже. Имя ключа дайте Step.
дальше вы должны создать раздел вашей программы, а также дополнительные разделы и ключи.
Моя программа называется testdia.exe. Поэтому и раздел есть testdia.
Step39 просто папка для блока параметров. Вообще лучше создавать разделы программным путем после создания раздела компании. Вот например так.
SetRegistryKey("Step");
WriteProfileString("Step39","TestApp" , "Hi");
Создаем код
Изменение функции InitInstance
BOOL CTestApp::InitInstance()
{
SetRegistryKey(("Step"));
AfxMessageBox(GetProfileString("Step39", "TestApp", "None :-("));
dlg.DoModal();
return FALSE;
}
Описание
SetRegistryKey устанавливает указатель по адресу HKEY_CURRENT_USER\Software\ с этого момента все обращения будут проходить по отношению этого адреса в реестре. Имя компании у нас Step. Дальше будет браться раздел, имя программы, по названию exe файла в нашем случае.
GetProfileString получает данные из раздела Step39 и по ключу TestApp, вернется строка типа CString. Ответсвенность за то, что данный параметр строка, и что он существует. Это на вашей совести.
Шпаргалка
Данные программы должны храниться в реестре по адресу
HKEY_CURRENT_USER\Software\\\
При инициализации программы необходиом установить указатель
SetRegistryKey(("Step"));
Доступ получаем используя функцию
GetProfile...(...);
Комментарии | Предыдущий Шаг | Следующий Шаг | Оглавление By Artem.
Используются технологии uCoz
|