Registry Tables Group
[This is preliminary documentation and subject to change.]

The installer has specific tables for the different types of registry entries. When populating the registry tables group it is important to try to minimize the number of entries put into the Registry table and maximize the use of the other, specific, registry tables. This is because the installer cannot distinguish between different types of registry entries in the Registry table and cannot use the internal logic necessary to take full advantage of all of the installer features. For example, making registry entries into specific tables maximizes the benefits to the application from advertising applications and features.
The figure shows the registry entry group of tables and as well as the Component table, Feature table, and File table. Although the latter are not directly involved with populating the registry, they are included in the figure because they are essential to the logic of the registry entry group .
The registry entry group contain the following tables of specific registry entries
-
The Registry table holds the information that the application needs to put into the system registry.
-
The Extension table contains all of the extensions your application uses along with the features and components associated with the extensions.
-
The Verb table associates command-verb information with the file extensions listed in the Extension table. This results in an indirect link between the Verb and Features table that is needed for feature advertisement.
-
The TypeLib table provides information that needs to be placed in the registry for the advertisement and registration of type libraries.
-
The MIME table associates a MIME context type with a CLSID or a file extension. This results in a path between the MIME and Feature Table that is needed for feature advertisement.
-
The SelfReg table provides information needed to self-register modules. Self-registration is provided by the installer only for backward compatibility and it is not recommended as a method for populating the registry, however if there are any modules in your application that must register themselves, use the SelfReg table.
-
The Icon table provides icon information which is copied to a file as a part of product advertisement.
-
The Class table is used to register Class IDs and other information for COM objects. This table contains COM server-related information that must be generated as a part of the product advertisement.
-
The ProgId table associates program IDs with class IDs.
-