Small. Useful. Reliable.
Windows utilities developed by
Debasis Bhattacharjee since 2004.
Lightweight Windows tools for system information, diagnostics, monitoring and productivity.
๐Ÿ“š
RegDllView
Freeware Category: System Information Version 1.0.0 Windows 10 / 11 x64
โฌ‡ Download RegDllView
Version 1.0.0 ยท ~300 KB ยท Portable, no installation required
RegDllView main window
RegDllView’s main window.

Overview

RegDllView scans the Windows registry for every COM component that has registered a DLL or OCX as its in-process server, and presents the whole list โ€” CLSID and the exact DLL path behind it โ€” in a single sortable table. COM registration is one of the more invisible layers of a Windows installation: applications, shell extensions, ActiveX controls and background components all quietly write entries under HKEY_CLASSES_ROOT\CLSID, and short of manually walking the registry with regedit there is no built-in way to see the whole picture at once. RegDllView exists to make that picture visible, and to give you a one-click way to unregister a component once you have found it.

This is the kind of tool that spends most of its life unused and then becomes essential for exactly one afternoon โ€” the day a broken installer, a leftover shell extension, or a dangling COM reference starts causing Explorer crashes, and you need to find the offending DLL registration to remove it.

Key Features

  • Scans HKEY_CLASSES_ROOT\CLSID for InprocServer32 entries pointing at .dll files
  • Displays each entry's CLSID and full DLL path side by side
  • One-click Unregister using the standard regsvr32 /u mechanism
  • Scoped scan (first 300 entries) to keep the tool fast and responsive on a full registry
  • No registry values are ever written directly โ€” all changes go through regsvr32
  • Read-only by default; nothing is modified until you explicitly click Unregister

Why You Might Need This Tool

The most common reason people reach for a tool like this is a misbehaving shell extension โ€” Explorer becomes sluggish, right-click menus take a visible beat to appear, or Explorer itself starts crashing intermittently, and the usual suspect is a third-party context-menu handler or thumbnail provider registered as a COM in-process server that never got cleanly removed by its own uninstaller. RegDllView lets you scan the registration list, spot an unfamiliar or clearly orphaned DLL path (pointing at a folder that no longer exists, for example), and unregister it without having to hand-edit the registry. Developers also use tools like this during COM component development, to confirm a build actually registered correctly and to clean up test registrations between builds.

How It Works

RegDllView opens HKEY_CLASSES_ROOT\CLSID via Microsoft.Win32.Registry.ClassesRoot and enumerates its subkey names, each of which is a CLSID GUID. For each one, it attempts to open the \InprocServer32 subkey and read its default value โ€” the DLL path a COM client would load when instantiating that CLSID. Entries whose default value ends in .dll (case-insensitively) are added to the grid; anything else, or any CLSID without an InprocServer32 subkey at all, is skipped. The scan stops after 300 matching entries specifically to keep the tool responsive, since a heavily-used Windows installation can have several thousand CLSID entries and walking every one with full subkey opens would introduce a noticeable delay. Unregistering a selected entry does not touch the registry directly โ€” it shells out to regsvr32.exe /u /s "<path>", the same official DllUnregisterServer mechanism every proper COM component implements, requesting elevation via the process's Verb property so Windows prompts for Administrator rights at the moment the unregister actually happens.

How to Use It

Launch RegDllView and it scans automatically, populating the grid within a second or two. Click Scan again at any point to refresh the list. Select the CLSID/DLL pair you want to remove and click Unregister; Windows will prompt for elevation via UAC, and a status line confirms once the regsvr32 command has run.

System Requirements & Notes

Scanning and viewing requires no special privileges. Unregistering a component requires Administrator rights, since regsvr32 needs to write to the registry; RegDllView requests elevation only at that moment, not when the tool first opens. Unregistering the wrong DLL can break whatever legitimate application depends on it, so only unregister entries you can positively identify as unwanted or orphaned.

Frequently Asked Questions

Why does the list stop at 300 entries?
It is a deliberate cap to keep the scan fast. Most investigative use cases โ€” hunting a specific misbehaving component โ€” are satisfied well within the first few hundred entries; a full unbounded scan is not needed for that workflow.

Can this tool register a new DLL, not just unregister one?
Not currently โ€” RegDllView is scoped to viewing existing registrations and unregistering ones you no longer want, matching its most common real-world use case.

Is unregistering reversible?
Yes, in most cases โ€” running regsvr32 "<path>" without the /u flag on the same DLL re-registers it, as long as the file itself is still present on disk.

Related Utilities