RegMaid.exe Helps Clean Up the Registry
ID: Q156078
|
The information in this article applies to:
-
Microsoft Visual C++, 32-bit Editions, versions 4.0, 4.1, 4.2, 5.0, 6.0
SUMMARY
RegMaid is a utility designed to clean up invalid registry entries caused
by deleting OLE projects created with Visual C++ and Microsoft Foundation
Classes (MFC). RegMaid provides information about entries that are believed
to be problematic within the HKEY_CLASSES_ROOT: CLSID, ProgId, TypeLib, and
Interface sections of the registry. This information is in a report form of
a list view, where the user can make multiple row selections. Once
selections have been made, the user can then delete them from the registry.
While RegMaid does not currently have an Archive and Restore capability, it
does provide a printed report mechanism for each of the four views.
The CLSID section considers an entry to contain a problem if any handler or
server file entry cannot be found by the system. This can occur if a server
has been registered over the net and the network connection has been
broken. An entry might also be listed if the server has been moved or
deleted. The CLSID section provides the most information about the entry
listed to help you wisely chose the entries to remove.
The ProgId section tries to match its CLSID entry with one in
HKEY_CLASSES_ROOT\CLSID. The typical entry being searched in the registry
is of the format HKEY_CLASSES_ROOT\Some ProgId\CLSID. If the entry under
HKEY_CLASSES_ROOT does not contain a CLSID sub-entry, then it is ignored.
This ensures that only ProgIds are listed. The clean up process is
identical to that of the CLSID section.
The TypeLib section looks for references to .tlb files and if one is found
in the registry that cannot be found in the system then the entry is listed
as problematic. As with the CLSID section the files in question are listed.
The final section is the Interface portion of HKEY_CLASSES_ROOT. In this
section each entry with a TypeLib entry is compared to the entries in
HKEY_CLASSES_ROOT\TypeLib, and if a match is not found, the entry is
listed here. This entry has the least amount of information available
for deciding which registry entries to delete. In fact the only
information available are the TypeLib and Interface GUIDs. However,
because this section is highly dependent on the TypeLib section, it should
be safe to delete these entries as long as you have resolved the TypeLib
issues first.
The following files are available for download from the Microsoft
Download Center. Click the file names below to download the files:
RegMaid.exe
For more information about how to download files from the Microsoft
Download Center, please visit the Download Center at the following Web
address
http://www.microsoft.com/downloads/search.asp
and then click How to use the Microsoft Download Center.
NOTE: Use the -d option when running RegMaid.exe to decompress the file and
re-create the proper directory structure.
NOTE: As of February 10, 1998, there is a new version of RegMaid.exe
(v1.1). It greatly reduces the number of erroneous listings caused by
RegMaid's inability to find a server file, including:
- Handling of long file names.
- Handling of environmental variables in the path.
- Confusion caused by multiple data entries for the server.
MORE INFORMATION
REFERENCES
Visual C++ 4.1 Sample: "REGISTRY: Uses the Win32 API to Access the
Registry"
Additional query words:
Registry Visual Basic RegClean
Keywords : kbfile kbole kbsample kbMFC kbVC400 kbVC410 kbVC420 kbVC500 kbVC600
Version : winnt:4.0,4.1,4.2,5.0,6.0
Platform : winnt
Issue type :
|