[ главная ]   [ рейтинг статей ]   [ справочник радиолюбителя ]   [ новости мира ИТ ]



Ответов: 0
25-02-12 07:01







   Web - программирование
PHP


ASP






XML



CSS

SSI





   Программирование под ОС











   Web - технологии








   Базы Данных









   Графика






Данные




Программирование под ОС / C - C++ /

Работаем реестром

Здраствуй, сейчас я покажу как в C++ Builder можно работать с системной реестром. Работать с реестром крайне удобно, в нем можно хранить данные и обращаться к ним, не прибегаю к написанию сложного и большого кода.

Наверно вы знаете, что сам реестр представляет собой дерево ключей и значений. Для того чтобы использовать возможность работы с реестор в код вашей программы
необходимо добавить #include <Registry.hpp> . Теперь довами переменную:

TRegistry *Reg=new TRegistry;

Здесь мы объявили переменную типа TRegistry, т.е именно с переменной Reg (хотя вы ее можете назвать по своему) мы будем работать дальше. В самой реестре существует несколько корневых ключей:

HKEY_CLASSES_ROOT – cодержит сведения о типах файлов.
HKEY_CURRENT_USER - настройки пользователя работающего в данный момент в системе.
HKEY_LOCAL_MACHINE - все самые важные настройки хранятся именно здесь.
HKEY_USERS – здесь содержатся профили всех пользователей.
HKEY_CURRENT_CONFIG – аппаратный профиль

Открыть тот или иной корневой ключ можно командой RootKey:

Reg->RootKey=HKEY_LOCAL_MACHINE;

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

Reg->OpenKey("Software",true);

Чтобы сохранить значение есть команда WriteString:

Reg->WriteString("Имя отображения","Значение ключа");

для Булевых значений:

Reg->WriteBool("имя",true);

Для чтения данных существует множество команд Read, после которых указывается тип данных (строка, числа, дата и т.д). К примеру:

Reg->ReadInteger(" ", );

Удалять данные из реестра надо через DeleteValue:

Reg->DeleteValue("Имя");

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

TRegistry *Reg=new TRegistry; //объявляем пересенную Reg
try
{
Reg->RootKey=HKEY_LOCAL_MACHINE;
//Открываем ключ и идем по адрессу, где храняться файлы автозагрузки
Reg->OpenKey("Software",true);
Reg->OpenKey("Microsoft",true);
Reg->OpenKey("Windows",true);
Reg->OpenKey("CurrentVersion",true);
Reg->OpenKey("Run",true);
Reg->WriteString("Имя вашей программы ",Application->ExeName);
//Заносим значение нашей программы
}
catch(...)
// Обрабатваем случайные ошибки
{}
delete Reg;
// Удаляем переменную
}


А теперь удалим нашу программу из автозугрузи, заменим команду WriteString на DeleteValue:

Reg->RootKey=HKEY_LOCAL_MACHINE;
Reg->OpenKey("Software",true);
Reg->OpenKey("Microsoft",true);
Reg->OpenKey("Windows",true);
Reg->OpenKey("CurrentVersion",true);
Reg->OpenKey("Run",true);
Reg->DeleteValue("Имя вашей программы ");
}
catch(...)
{}
delete Reg;
}


Ну, вот пожалуй и все. Если возникнуть проблемы пишите lezh_victor@pcnext.ru




Комментарии

 Ваш комментарий к данному материалу будет интересен нам и нашим читателям!



Последние статьи: Программирование под ОС / C - C++ /

Пишем CD проигрыватель 2
28-05-2010   

Сейчас я покажу как можно написать простой проигрыватель CD дисков. Для начала разместим все нужные компоненты на форме (см. рисунок)... подробнее

Кол. просмотров: общее - 4119 сегодня - 2

Пишем браузер
28-05-2010   

Продолжаю тему клонирования программ darkamstera на Delphi в С++Builder. В этой статье я покажу, как с помощью стандартных компонентов, можно создать свой браузер. Браузер будет на движке всеми-любимого InternetExplorer. Наш зверь сможет ходить по URL... подробнее

Кол. просмотров: общее - 2898 сегодня - 2

Информация о системе
28-05-2010   

Выводим информацию о нашей родненькой системе. Для получения большей части информации мы будем использовать обширные функции, это не так сложно, как может показатся с первого взгляда и вообще код довольно простой и примитивный, так что покапавшись в нем пару минут - можно в легкостью разобраться что к чему, зачем и как... подробнее

Кол. просмотров: общее - 2923 сегодня - 2

FTP клиент своими руками
28-05-2010   

Здраствуй, сечас я покажу, как в CBuilder можно создать свой простой FTP-клиент, похожий пример можно найти в документации C++Builder Developnets Guilde... подробнее

Кол. просмотров: общее - 3354 сегодня - 5

Работаем с POP-сервером
28-05-2010   

Здраствуй, в этой статье я расскажу про способы получения e-mail писем и их прочтения. Для начала давайте составим интерфейс будущей программы Вот, что у меня вышло... подробнее

Кол. просмотров: общее - 2963 сегодня - 3



  WWW.COMPROG.RU - 2009-2012 | Designed and Powered by Zaipov Renat | Projects