Class Table

[This is preliminary documentation and subject to change.]

The Class table contains COM server-related information that must be generated as a part of the product advertisement. Each row may generate a set of registry keys and values. The associated ProgId information is included in this table.

The Class table has the following columns.

Column Type Key Nullable
CLSID GUID Y N
Context Identifier Y N
ProgId_Default Text Y
Description Text Y
Insertable Integer Y
AppId GUID Y
FileTypeMask Text Y
Icon_ Identifier Y
IconIndex Integer Y
DefInprocHandler Filename Y
Argument KeyFormatted Y
Feature_ Identifier N
Component_ Identifier N

Columns

CLSID
The Class identifier (ID) of a COM server.
Context
The server context for this server.

May be one of the following values:

LocalServer

LocalServer32

InprocServer

InprocServer32

ProgId
The default Program ID associated with this Class ID.
Description
Localized description associated with the Class ID and Program ID.
Insertable
Writes the Insertable key if it is non-zero and non-null.

Non-negative numbers only.

AppId
Application ID containing DCOM information for the associated application (string GUID). Not used in installer version 1.0.
FileTypeMask
Contains information for the HKCR (this CLSID) key.

If multiple patterns exist, they must be delimited by a semicolon, and numeric subkeys are generated: 0,1,2...

Icon_
External key into the Icon table specifying the icon file associated with this CLSID. Is written under the DefaultIcon key associated with the ProgId.

External key to column one of the Icon table .

IconIndex
Icon index into the icon file. This can be Null.

Non-negative numbers only.

DefInprocHandler
Default inproc handler.

May be optionally provided only for Context = LocalServer or LocalServer32. A non-numeric value is treated as a system file that serves as the 32-bit InprocHandler (appearing as the InprocHandler32 value).
Value Meaning
1 = default (system) 16-bit InprocHandler (appearing as the InprocHandler value)
2 = default (system) 32-bit InprocHandler (appearing as the InprocHandler32 value)
3 = default (system) 16-bit as well as 32-bit InprocHandlers

Argument
This column is optional only when the Context column is set to the LocalServer or LocalServer32 server context. The text is registered as the argument against the OLE server and is used by OLE for invoking the server.
Feature_
External key into the Feature table specifying the feature that provides the COM server.

External key to column one of the Feature table.

Component_
External key into the Component table specifying the component whose key file provides the COM server.

External key to column one of the Component table.

Remarks

This table is referred to when the RegisterClassInfo action or the UnregisterClassInfo action is executed.