Форум: "WinAPI";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
ВнизRegDeleteKey - как удалить ключ с внутренними ключами Найти похожие ветки
← →
Prov (2004-10-27 11:17) [0]Уважаемые мастера. Вообщем, вышеуказанная йункция не удаляет ключ в реестре,если он хранит в себе вложенные ключи... В хелпе так и написано, что данная функциЯ не удалит ключ, если он содержит вложенные ключи. Подскажите, как быть ? Заранее благодарен. И еще, если можно, киньте кусочек кода, как пользоваться ф-ей RegQueryInfoKey(regQueryKey - точно не епомню названия). Премного благодарен.
← →
Warlock © (2004-10-27 11:37) [1]Все что могу подсказать - рекурсивная процедура
удаления с использованием RegEnumKey. Дальше думай сам, поскольку я такого не писал.
← →
Prov (2004-10-27 12:05) [2]В том-то и дело.. Я пробовал пользоваться функцией RegEnumKey, но сам понять не могу, что и куда.. Пожалуйста, подскажите... :(( Еще раз спасибо.
← →
clickmaker © (2004-10-27 12:21) [3]на паскаль сам переводи
LONG RecursiveRegDeleteKey(HKEY hParentKey, LPSTR szKeyName)
{
DWORD dwIndex = 0L;
CHAR szSubKeyName[256];
HKEY hCurrentKey;
DWORD dwResult;
if((dwResult = RegOpenKey(hParentKey, szKeyName, &hCurrentKey)) ==
ERROR_SUCCESS)
{
while((dwResult = RegEnumKey(hCurrentKey, 0, szSubKeyName, 255)) ==
ERROR_SUCCESS)
{
if((dwResult = RecursiveRegDeleteKey(hCurrentKey,
szSubKeyName)) != ERROR_SUCCESS)
break;
}
if((dwResult == ERROR_NO_MORE_ITEMS) || (dwResult == ERROR_BADKEY))
{
dwResult = RegDeleteKey(hParentKey, szKeyName);
}
}
RegCloseKey(hCurrentKey);
return dwResult;
}
← →
Дмитрий Ботвин (2004-10-27 12:28) [4]А вот так пробывал:
uses Registry;
//Удаление параметра ключа
procedure TForm1.DeleteRegKey(FullNameKey: String);
var Reg : TRegistry;
begin
Reg := TRegistry.Create;
Reg.Access:=KEY_ALL_ACCESS;
if not(Reg.OpenKey(FullNameKey,false)) then
begin
Application.MessageBox("Не могу открыть выбранный
ключ!","Открытие ключа",MB_OK+MB_ICONSTOP);
exit;
end;
if not(Reg.DeleteKey(FullNameKey)) then
Application.MessageBox("Не могу удалить выбранный ключ!",
"Удаление ключа",MB_OK+MB_ICONSTOP);
end;
Здесь FullNameKey - полное имя ключа.
← →
Prov (2004-10-29 09:40) [5]Clickmaker - спасибо.
Дмитрий - в том то и дело, что атк я умею... Мне надо на АПИ
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.033 c