|
Вопрос # 5 635/ вопрос открыт / |
|
Здравствуйте, эксперты! Можно ли удалить ключ из реестра, который содержит подключи и значения, какой-нибудь функцией с помощью TRegistry? Типо эгого Reg.DeleteKeyAndSubkeys. Или всё-таки придётся всё ручками удалять... сперва все параметры, потом подключи, а затем ту самую папку?
Примечание #1 (14 сентября 2011, 19:08): Т.е. не папку а ключ.
 |
Вопрос задал: eclipse (статус: Посетитель)
Вопрос отправлен: 14 сентября 2011, 08:40
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Всего сообщений: 13; последнее сообщение — 19 сентября 2011, 20:05; участников в обсуждении: 3.
|
bugmenot (статус: 3-ий класс), 14 сентября 2011, 20:50 [#1]:
Цитата:
The subkey to be deleted must not have subkeys. To delete a key and all its subkeys, you need to enumerate the subkeys and delete them individually. To delete keys recursively, use the RegDeleteTree or SHDeleteKey function.
виконання програми розпочинається з того самого мiсця, де призупинилося.
|
|
Мережников Андрей (статус: Абитуриент), 14 сентября 2011, 20:57 [#2]:
Call DeleteKey to remove a specified key and its associated data, if any, from the registry. Under Windows 95, if the key has subkeys, the subkeys and any associated data are also removed. Under Windows NT, subkeys must be explicitly deleted by separate calls to DeleteKey.
|
|
bugmenot (статус: 3-ий класс), 15 сентября 2011, 02:30 [#3]:
Цитата (Мережников Андрей):
Under Windows 95 О как, а я про Win9x уже забыл, как про страшный сон!
виконання програми розпочинається з того самого мiсця, де призупинилося.
|
|
Мережников Андрей (статус: Абитуриент), 15 сентября 2011, 05:52 [#4]:
цитата взята с сайта embarcadero
|
|
eclipse (статус: Посетитель), 15 сентября 2011, 09:46 [#5]:
Ясно... спасибо всем... всё - таки так и придётся оставить так как было...
|
|
bugmenot (статус: 3-ий класс), 15 сентября 2011, 10:33 [#6]:
Цитата (eclipse):
всё - таки так и придётся оставить так как было... И для кого я привел метод обхода ограничения... :-/
виконання програми розпочинається з того самого мiсця, де призупинилося.
|
|
eclipse (статус: Посетитель), 15 сентября 2011, 22:31 [#7]:
bugmenot а вот фиг там! Reg.Deletekey не удаляет всё что внутри указанного ключа да и сам ключ, если там есть ещё ключи и параметры (нужно с TRegistry). По крайней мере в ветке HKEY_LOCAL_MACHINE.
|
|
Мережников Андрей (статус: Абитуриент), 16 сентября 2011, 05:42 [#8]:
to eclipse - Вы читать умеете? bugmenot не писал что DeleteKey (который является методом TRegistry) удаляет подключи. В его сообщении написано как раз наоборот:Цитата (bugmenot):
The subkey to be deleted must not have subkeys.
|
|
eclipse (статус: Посетитель), 16 сентября 2011, 22:16 [#9]:
Да ёлки-палки! Я про это и напмсал что он не удаляет (DeleteKey), ещё уточнил есть ли другой метод? Только все остальные методы которое там приведены с Tregistry не связаны, если ток на прямую через API (RegDeleteTree or SHDeleteKey).
|
|
Мережников Андрей (статус: Абитуриент), 16 сентября 2011, 22:34 [#10]:
Цитата (eclipse):
Да ёлки-палки!
Организуете рекурсию по удалению подключей - в чем проблема?
|
|
bugmenot (статус: 3-ий класс), 16 сентября 2011, 23:39 [#11]:
Цитата (Мережников Андрей):
рекурсию по удалению подключей - в чем проблема?
еще можно поставить Windows Me и проблема сама рассосётся :-D
у RegDeleteKey (для которого TRegistry.DeleteKey является оберткой) поведение такое, о чём я сразу и написал
виконання програми розпочинається з того самого мiсця, де призупинилося.
|
|
eclipse (статус: Посетитель), 19 сентября 2011, 20:02 [#12]:
Ха! Спасибо! Лучше на хрюше останусь!
|
|
eclipse (статус: Посетитель), 19 сентября 2011, 20:05 [#13]:
В общем рекурсия и была.
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|