Shell Desktop Namespace COM CLSID Registry Locations
This guide details the exact Windows Registry paths used to define and register Component Object Model (COM) Class Identifiers (CLSIDs) for shell desktop namespace extensions. In Windows, desktop namespace items—such as “This PC,” “Recycle Bin,” and “Network”—are managed by COM objects registered in central class stores and activated via designated Explorer namespace keys.
1. Active Shell Desktop Namespace Keys
To determine which COM objects actually appear in the shell desktop
namespace, Windows queries specific NameSpace registry
keys. Each subkey is a GUID representing a registered CLSID.
- System-wide Desktop Items:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace - User-Specific Desktop Items:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace
On 64-bit systems hosting 32-bit shell components, 32-bit namespace
registrations can also be found at: *
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace
2. COM CLSID Definition Keys
While the NameSpace keys instruct Windows Explorer to
display an item on the desktop, the actual definition, handler DLL,
icon, and attributes of the COM object are stored in the main COM
registry hive:
- Merged View:
HKEY_CLASSES_ROOT\CLSID\{GUID} - System-Wide Definitions (Machine):
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{GUID} - User-Specific Definitions:
HKEY_CURRENT_USER\SOFTWARE\Classes\CLSID\{GUID} - 32-bit COM Objects on 64-bit Windows:
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\WOW6432Node\CLSID\{GUID}
3. Key Components of a Namespace CLSID
Inside HKEY_CLASSES_ROOT\CLSID\{GUID}, several standard
subkeys define how the shell item behaves:
InprocServer32: Points to the dynamic link library (.dll) implementing the shell folder extension (oftenshell32.dllorwindows.storage.dll) and defines the threading model.DefaultIcon: Defines the path to the icon file and index displayed for the item on the desktop.ShellFolder: Contains binary and DWORD flags (such asAttributesandFolderValueFlags) that determine shell behavior, such as whether the item can be deleted, renamed, or dragged.Instance/PropertyBag: Used by declarative namespace extensions to specify target folder paths or special virtual folder mappings without requiring custom COM DLL code.