Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.11.21;
Скачать: [xml.tar.bz2];

Вниз

Поиск по реестру, сканирование реестра   Найти похожие ветки 

 
DeScriptor   (2004-10-05 22:27) [0]

Необходимо устроить сабж, т.е. поиск ключа и/или значения в реестре. Как это реализовать?


 
GuAV ©   (2004-10-05 23:15) [1]

Перебором и рекурсией. Используя TRegistry или используя функции winapi для работы с реестром напрямую.


 
DeScriptor   (2004-10-07 22:48) [2]

Ну, эт я и сам догадался. Вопрос в том, как именно. Дело в том, что никаких явных способов получить, например, содержимое ключа HKEY_CURRENT_USER я не знаю. GetKeyNames не срабатывает, т.к. не открыт ни один ключ, открыть ключ HKEY_CURRENT_USER тоже не получается, т.к. такого ключа нет. Соответственно, ни о каком переборе не может быть и речи. А WinAPI-функция RegSaveKey отчего-то создает пустой файл и ничего туда не сохраняет, хотя я ей задаю правильные параметры.


 
GuAV ©   (2004-10-07 23:29) [3]

 with tregistry.Create do
 try
   //RootKey:=HKEY_LOCAL_MACHINE
   OpenKey("", false);
   GetKeyNames(Memo1.Lines);
   CloseKey;
 finally
   free;
 end


 
cerber1 ©   (2004-10-09 13:35) [4]

2 DeScriptor

Читайте ХЕЛП:
 
The RegOpenKeyEx function opens the specified key.
LONG RegOpenKeyEx(

   HKEY hKey, // handle of open key
   LPCTSTR lpSubKey, // address of name of subkey to open
   DWORD ulOptions, // reserved
   REGSAM samDesired, // security access mask
   PHKEY phkResult  // address of handle of open key
  );


Parameters

hKey

Identifies a currently open key or any of the following predefined reserved handle values:

HKEY_CLASSES_ROOT
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS

lpSubKey

Points to a null-terminated string containing the name of the subkey to open. If this parameter is NULL or a pointer to an empty string, the function will open a new handle of the key identified by the hKey parameter. In this case, the function will not close the handles previously opened....


 
DeScriptor   (2004-10-09 16:31) [5]

>>GuAV ©   (07.10.04 23:29) [3]
>> with tregistry.Create do
>> try
>>   //RootKey:=HKEY_LOCAL_MACHINE
>>   OpenKey("", false);
>>   GetKeyNames(Memo1.Lines);
>>   CloseKey;
>> finally
>>   free;
>> end

Вот это конгениально!!!! Именно то, что мне и нужно было! И так просто!
Огромущщее спасибо!!!



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2004.11.21;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.039 c
4-1096961128
Lera
2004-10-05 11:25
2004.11.21
Обмен между приложениями.


1-1099568010
Майя
2004-11-04 14:33
2004.11.21
Прокрутка выпадающих списков и грида мышкой


1-1100068819
markers
2004-11-10 09:40
2004.11.21
Как отбросить форму от курсора при наведении на форму


4-1097479261
Yot
2004-10-11 11:21
2004.11.21
РЕ-файл


8-1093273628
redlord
2004-08-23 19:07
2004.11.21
вывод текста не по прямой линии





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский