home *** CD-ROM | disk | FTP | other *** search
-
- Option Explicit
- 'having this on *all* the time is *always* a bad idea!!!
- On Error Resume Next
-
- ' Registry key hives.
- Const HKEY_CLASSES_ROOT = &H80000000
- Const HKEY_CURRENT_USER = &H80000001
- Const HKEY_LOCAL_MACHINE = &H80000002
- Const HKEY_USERS = &H80000003
- Const HKEY_CURRENT_CONFIG = &H80000005
- Const HKEY_DYN_DATA = &H80000006
-
- Private Const NOERROR = 0
- Private Const MAX_PATH = 260
-
- ' CSIDL constants.
- Private Const CSIDL_DESKTOP = &H0
- Private Const CSIDL_INTERNET = &H1
- Private Const CSIDL_PROGRAMS = &H2
- Private Const CSIDL_CONTROLS = &H3
- Private Const CSIDL_PRINTERS = &H4
- Private Const CSIDL_PERSONAL = &H5
- Private Const CSIDL_FAVORITES = &H6
- Private Const CSIDL_STARTUP = &H7
- Private Const CSIDL_RECENT = &H8
- Private Const CSIDL_SENDTO = &H9
- Private Const CSIDL_BITBUCKET = &HA
- Private Const CSIDL_STARTMENU = &HB
- Private Const CSIDL_DESKTOPDIRECTORY = &H10
- Private Const CSIDL_DRIVES = &H11
- Private Const CSIDL_NETWORK = &H12
- Private Const CSIDL_NETHOOD = &H13
- Private Const CSIDL_FONTS = &H14
- Private Const CSIDL_TEMPLATES = &H15
- Private Const CSIDL_COMMON_STARTMENU = &H16
- Private Const CSIDL_COMMON_PROGRAMS = &H17
- Private Const CSIDL_COMMON_STARTUP = &H18
- Private Const CSIDL_COMMON_DESKTOPDIRECTORY = &H19
- Private Const CSIDL_APPDATA = &H1A
- Private Const CSIDL_LOCAL_APPDATA = &H1C
- Private Const CSIDL_PRINTHOOD = &H1B
- Private Const CSIDL_ALTSTARTUP = &H1D
- Private Const CSIDL_COMMON_ALTSTARTUP = &H1E
- Private Const CSIDL_COMMON_FAVORITES = &H1F
- Private Const CSIDL_INTERNET_CACHE = &H20
- Private Const CSIDL_COOKIES = &H21
- Private Const CSIDL_HISTORY = &H22
-
- '********************************************************************************
-
- CleanANTFolders
- CleanANTRegistry
-
- 'wscript.echo "Done!"
- Sub CleanANTFolders
- Dim appDataPath
- Dim localAppDataPath
- Dim fso
-
- 'wscript.echo "Creating FileSystemObject"
- Set fso = CreateObject("Scripting.FileSystemObject")
-
- localAppDataPath = GetSpecialFolderLocation(CSIDL_LOCAL_APPDATA) & "\FireANT"
- 'wscript.echo "Deleting " & localAppDataPath
- fso.DeleteFile localAppDataPath & "\FireANT.fdb"
- fso.DeleteFile localAppDataPath & "\FireANT.log"
- fso.DeleteFolder localAppDataPath, True
-
- appDataPath = GetSpecialFolderLocation(CSIDL_APPDATA) & "\FireANT"
- fso.DeleteFolder appDataPath, True
- End Sub
-
- Sub CleanANTRegistry
- 'Delete registry settings for ANT.
- DeleteRegistryKey HKEY_CURRENT_USER, "Software\Mycelia Networks"
- End Sub
-
- ' Gets a Windows "special" folder location.
- Function GetSpecialFolderLocation(csidl)
- Dim shellApp
- Dim folderName
-
- Set shellApp = CreateObject("Shell.Application")
-
- folderName = shellApp.Namespace(csidl).Self.Path
- GetSpecialFolderLocation = folderName
- End Function
-
- '********************************************************************************
- ' Recursively delete registry keys.
- Sub DeleteRegistryKey(RegRoot, SPath)
- Dim sKeys
- Dim SubKeyCount
- Dim objRegistry
- Dim lRC
- Dim lRC2
- Dim Key
- Set objRegistry = GetObject("winmgmts:root\default:StdRegProv")
-
- 'wscript.echo "ENUMERATING KEY: " & sPath & "\" & Key
- lRC = objRegistry.EnumKey(RegRoot, sPath, sKeys)
-
- If IsArray(sKeys) Then
- For Each Key in sKeys
- DeleteRegistryKey RegRoot, SPath & "\" & Key
- Next
- End If
- lRC2 = objRegistry.DeleteKey(RegRoot, sPath)
- End Sub
-