Thursday 21 July 2011

VB Script for Deleting Registry entry with subkeys using Functions

On Error Resume Next
Const HKEY_LOCAL_MACHINE = &H80000002
strComputer = "."
strKeyPath  = "SOFTWARE\Classes\CLSID\{6B5B1E2A-014B-11D5-A66A-001083345DAA}"
strKeyPath1 = "SOFTWARE\Classes\CLSID\{A77B8FE1-63A8-427E-B880-E3FFAEF9689D}"
strKeyPath3 = "SOFTWARE\Classes\FactSet.DownloadSite"
strKeyPath4 = "SOFTWARE\Classes\FactSet.UploadSite"
strKeyPath5 = "SOFTWARE\Classes\TypeLib\{FD26D8D4-FC65-11D0-A209-080009AC118F}"
strKeyPath6 = "SOFTWARE\Classes\Interface\{030D99A0-F656-11D1-A23C-080009AC118F}"
strKeyPath7 = "SOFTWARE\Classes\Interface\{FD26D8E1-FC65-11D0-A209-080009AC118F}"
Set objRegistry = GetObject("winmgmts:\\" & _
    strComputer & "\root\default:StdRegProv")
DeleteSubkeys HKEY_LOCAL_MACHINE, strKeypath
DeleteSubkeys HKEY_LOCAL_MACHINE, strKeypath1
DeleteSubkeys HKEY_LOCAL_MACHINE, strKeypath2
DeleteSubkeys HKEY_LOCAL_MACHINE, strKeypath3
DeleteSubkeys HKEY_LOCAL_MACHINE, strKeypath4
DeleteSubkeys HKEY_LOCAL_MACHINE, strKeypath5
DeleteSubkeys HKEY_LOCAL_MACHINE, strKeypath6
DeleteSubkeys HKEY_LOCAL_MACHINE, strKeypath7 
Sub DeleteSubkeys(HKEY_LOCAL_MACHINE, strKeyPath)
    objRegistry.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubkeys
    If IsArray(arrSubkeys) Then
        For Each strSubkey In arrSubkeys
            DeleteSubkeys HKEY_LOCAL_MACHINE, strKeyPath & "\" & strSubkey
        Next
    End If
    objRegistry.DeleteKey HKEY_LOCAL_MACHINE, strKeyPath
End Sub

No comments:

Post a Comment