File registration

The installer can register installation files during installation and unregister them before they are removed:

All DLL registration is performed out of process with separate executables for 32-bit and 64-bit Windows versions. This allows the installer to register any type of DLL, regardless of the type of Setup stub that is being used.

The following registration actions are supported by the Registration attribute of installation files:

Registration File type Description
No self-registration n/a Do not register the file.
Use DllRegisterServer .dll, .ocx Call the file's DllRegisterServer entry point to register the file, and DllUnregisterServer to unregister it. This is typically used with in-process COM servers such as ActiveX controls and others.
Use RegisterTypeLib .dll, .tlb Register the file with the Win32 API RegisterTypeLib and unregister it with UnRegisterTypeLib. This is typically used with COM type libraries that do not contain their own registration code.
Run with /RegServer .exe Register the file by running it with the /RegServer command line argument and unregister it with the /UnregServer command line argument. This is typically used with stand-alone applications that contain their own registration code.
Register as Font .ttf, .ttc, .otf Register the file as a font on the target system. This is typically used with font files (TrueType, TrueType Collections, and OpenType).
Register as WinHelp .hlp Register the file as a WinHelp file on the target system. This is typically used with WinHelp .hlp files; do not use it with HTML Help .chm files.

When you add a new installation file to your project, InstallMate will automatically assign a registration order to the file based on built-in heuristics and detected dependencies. However, not all registration dependencies can be statically detected, so if you know that a particular file must be registered before or after another one, then you can set the file's Registration # field to a lower (before) or higher (after) number than the other's registration order.

Files are registered by increasing order number and unregistered in the opposite order. If two files have the same Registration # number, their mutual order may vary between installation sessions. The following order numbers are predefined; you can use order numbers within the gaps left by the predefined numbers to fine-tune the registration process.

Order number Description
50 Default for font files
60 Default for WinHelp files
100 Default for type libraries (.tlb and .dll if not otherwise registered)
200 Default for low-level system DLL files
300 Default for medium-level system DLL files
400 Default for other Microsoft DLL files (ATL, MFC, etc.)
500 Default for low-level system OCX files
600 Default for medium-level system OCX files
700 Default for other Microsoft OCX files
1000 Default for non-Microsoft DLL files
1500 Default for non-Microsoft OCX files
2000 Default for EXE files

Related topics

File attributes