Registration-Free COM

Reg-Free COM is a registry replacement for COM components. This functionality allows applications to be deployed with simpler deployment models such as XCOPY and ClickOnce, overcoming the traditional factors that can sometimes complicate the deployment and maintenance of COM components.

Each time your application runs, the Native Assembly Loader looks in the application folder for an application manifest file (such as WindowsApplication1.exe.manifest) based on the name of your executable (such as WindowsApplication1.exe). When one or more manifests are present, Windows builds an internal table that relates each identifier (CLSID) to its corresponding component file. Later, when the application instantiates a component, CoCreateInstance looks in this internal table before looking in the system registry. If all necessary components are fully described in one or more manifests, absolutely no component registration is required in the system registry for the application to function properly.

The principal benefit is that the COM component is totally isolated within your application. Even if other applications use the same COM component (or a different version of it), this will not interfere with your application in any way. The COM component for your application cannot be accessed by other applications. Finally, update and un-installation couldn't be simpler—just replace or remove the application folder.

How Registration-Free COM stores and accesses components.