Что нового

Как удалить все ветки в реестре, в имени которых есть #USBSTOR# без всяких вопро

palexa

Новичок
Сообщения
3
Репутация
0
Привет!

Может поможет кто

Есть ветки реестра, типа
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\DeviceClasses\{e768c1e7-986a-404d-bbf3-748b5dce914a}\##?#USBSTOR#Disk&Ven_SanDisk&Prod_Cruzer_Micro&Rev_0.1#20052845231DCFB1DD8D&0#{e768c1e7-986a-404d-bbf3-748b5dce914a}

Объеденияет их то, что в каждой из них, в названии ветки есть #USBSTOR#

Как удалить все ветки в реестре, в имени которых есть #USBSTOR# без всяких вопросов

Заранее спасибо
 

СН3СН2ОН

Знающий
Сообщения
78
Репутация
12
Взял этот код и переделал

Код:
Func Del__($Vetka, $maska)

	$Count = 1

	While 1

		$Key = RegEnumKey($Vetka, $Count)
		If $Key = '' Then
			ExitLoop
		EndIf
		;заходим рекурсивно
		$Vetka_ = $Vetka & '\' & $Key
		Del__($Vetka_, $maska)

		If StringInStr($Key, $maska) Then
			ConsoleWrite('Удаляем !!!' & @CR)
			ConsoleWrite($Vetka_ & @CR)
			;RegDelete($Vetka_)
			;ExitLoop
		EndIf


		$Count += 1
	WEnd

EndFunc

Del__('HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\DeviceClasses','#USBSTOR#')


Возможные проблемы
1 не тестировал
2 после удаления ветки возможно собьется счетчик, который $Count, тогда решение просто сделать глобальный массив и забить туда все данные, потом пробежаться по нему и удалить
 
Автор
P

palexa

Новичок
Сообщения
3
Репутация
0
Спасибо но не работает
#USBSTOR# может быть где угодно, не обязательно в указаном мной разделе или кусте

Ну я попробовал, ничего не удалило
 
Верх