本帖最后由 lixiaolong 于 2011-1-15 22:15 编辑
回复 1# 网络凯子
这样不行吗?
指定要保留的注册表值,其他的都删除.
delregkey('指定注册表项名', '不想删除的值', '不想删除的值', '不想删除的值')
delregkey($regkey, $key1, $key2, $key3)
默认能指定3个值.
注意:
不要写错要保留的值,要不然的话想保留的值也给删除了.
要不自己加个判断.
请先备份注册表再试.
$a = 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run'
delregkey($a, 'ATKMEDIA', 'ETDWare', 'HControlUser');不想删除的值(3个)
Func delregkey($regkey, $key1, $key2, $key3)
For $i = 1 To 100
$key = RegEnumVal($regkey, $i)
If @error <> 0 Then
MsgBox(0, 0, '删除前:' & $i & '个启动项')
ExitLoop
EndIf
Next
$i = 1
While 1
$key = RegEnumVal($regkey, $i)
If @error <> 0 Then
MsgBox(0, 0, '删除后:' & $i & '个启动项')
ExitLoop
EndIf
If $key = $key1 Or $key = $key2 Or $key = $key3 Then
$i += 1
ContinueLoop
Else
RegDelete($regkey, $key)
EndIf
WEnd
EndFunc ;==>delregkey
|