Рад са Виндовс регистром из Делпхи апликација

Регистар је једноставно база података коју апликација може користити за складиштење и преузимање конфигурације информације (величина и позиција задњег прозора, корисничке опције и информације или било која друга конфигурација података). Регистар такође садржи информације о Виндовс-у (95/98 / НТ) и о вашој Виндовс конфигурацији.

„База података“ регистра се чува као бинарна датотека. Да бисте га пронашли, покрените регедит.еке (услужни програм за уређивање регистра Виндовс) у вашем Виндовс директоријуму. Видећете да су информације у Регистру организоване на сличан начин Виндовс Екплорер. Регедит.еке можемо да користимо за преглед информација у регистру, промену или додавање неких информација у њих. Очигледно је да би промене базе података регистра могле да доведу до пада система (наравно ако не знате шта радите).

Вероватно је врло познато да је у данима Виндовс 3.кк ИНИ датотека био популаран начин за чување информација о апликацијама и других поставки које се могу конфигурисати за кориснике. Најстрашнији аспект ИНИ датотека је то што су само текстуалне датотеке које корисник може лако уређивати (мењати или чак брисати). У 32-битном Виндовс-у Мицрософт препоручује коришћење Регистри-а за чување врсте информација које обично стављате у ИНИ датотеке (корисници имају мању вероватноћу да мењају уносе у регистру).

instagram viewer

Делпхи пружа пуну подршку за промену уноса у системском регистру Виндовс: преко класе ТРегИниФиле (исти основни интерфејс као и ТИниФиле класа за кориснике ИНИ датотека са Делпхи 1.0) и ТРегистри класе (омотач ниског нивоа за Виндовс регистар и функције које раде на регистру).

Као што је већ споменуто у овом чланку, основне операције регистра (користећи манипулацију кодом) су читање информација из Регистра и уписивање података у базу података.

Сљедећи дио кода промијенит ће Виндовс позадину и онемогућити чувар заслона користећи ТРегистри класу. Пре него што можемо да користимо ТРегистри, морамо додати регистарску јединицу клаузули употребе на врху изворног кода.

~~~~~~~~~~~~~~~~~~~~~~~~~
користи регистар;
процедура ТФорм1.ФормЦреате (пошиљалац: ТОбјецт);
вар
рег: ТРегистри;
започети
рег: = ТРегистри. Креирај;
са рег стварно почињу
покушати
ако ОпенКеи ('\ Цонтрол Панел \ десктоп', Фалсе) тада започне
// промените позадину и поплочите је
рег. ВритеСтринг ('Позадина', 'ц: \ виндовс \ ЦИРЦЛЕС.бмп');
рег. ВритеСтринг ('ТилеВаллпапер', '1');
// онемогући чувар заслона // ('0' = онемогући, '1' = омогући)
рег. ВритеСтринг ('СцреенСавеАцтиве', '0');
// ажурирајте промене одмах
СистемПараметерсИнфо (СПИ_СЕТДЕСКВАЛЛПАПЕР, 0, нула, СПИФ_СЕНДВИНИНИЦХАНГЕ);
СистемПараметерсИнфо (СПИ_СЕТСЦРЕЕНСАВЕАЦТИВЕ, 0, нула, СПИФ_СЕНДВИНИНИЦХАНГЕ);
крај
напокон
рег. Бесплатно;
крај;
крај;
крај;
~~~~~~~~~~~~~~~~~~~~~~~~~

Те двије линије кода које почињу са СистемПараметерсИнфо... присилити Виндовс да одмах ажурира информације о позадини и чувару заслона. Када покренете апликацију, видећете Виндовс позадину битмап промените се у Цирцлес.бмп слику - то јест ако у вашем директоријуму Виндовс имате слику кругова.бмп. (Напомена: чувар заслона је сада онемогућен.)