Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Запись инфы из ключа реестра в файл


Sagrer ©   (2004-07-04 23:11:00) 

Собсно мне надо как-то сделать нечто вроде аналога TRegistry.LoadKey и TRegistry.SaveKey.

Пока пытался делать вот так

var
 Key : HKey;
begin
 //
 Key := RegKeyOpenRead(HKEY_CURRENT_USER,'Software\TEST!');
 RegSaveKey(HKEY_CLASSES_ROOT,'test1.reg',nil);
 RegKeyClose(Key);
end;

файл test1.reg создается, но остается пустым.

Ключ HKEY_CURRENT_USER\Software\TEST! ессно существует и содержит значения.

Собсно про RegSaveKey узнал когда посмотрел на TRegistry.SaveKey, делаю вроде бы так же как там, но не работает :(.


Gandalf   (2004-08-17 22:52:00) [1]

Сначало сохраняешь потом читаешь. В чем конкретно проблема?


Ewgenii   (2004-08-06 22:06:00) [2]

Как сохранить настройки в реестре и потом считать их?


Vladimyr   (2004-07-08 03:13:00) [3]

Есть ф-ция АПИ: AdjustTokenPrivileges - или что-то подобное


Sagrer   (2004-07-05 14:43:00) [4]

ну это то я знаю, что можно все руками сделать, но зачем выдумывать велосипед, если есть функции API для этого?

А TRegistry я не использую, я просто посмотрел, как это сделано в TRegistry, и попытался сделать так-же, но не работает.

RegSaveKey и RegLoadKey - это из API. Но мне не удалось их правильно использовать..... имхо проблема в каких-то "привилегиях"... в справке написано, что
Windows NT: The calling process must have the SE_BACKUP_NAME privilege.

но как дать процессу эту привилегию - хз :(.


zzzz   (2004-07-05 09:56:00) [5]

http://kol.mastak.ru/files/art/lessons8.htm


Falcon   (2004-07-05 09:28:00) [6]

Воспользуйся RegKeyGetStr (см. kol.pas) и дальше пиши значение ключа куда душа пожелает. В KOL есть свой набор функций для работы с реестром. Если использовать TRegistry, сразу резко возрастет размер екзешника.


Sagrer   (2004-07-05 00:47:00) [7]

сорри, не совсем то написал...

var
 Key : HKey;
begin
 //
 Key := RegKeyOpenRead(HKEY_CURRENT_USER,'Software\TEST!');
 RegSaveKey(Key,'test1.reg',nil);
 RegKeyClose(Key);
end;

это тоже не работает. HKEY_CLASSES_ROOT вместо Key подставить - это я уже потом пробовал, когда читал справку про HKey...


Наверх

Титульная страница Поиск, карта сайта Написать письмо