ProgId Table

The ProgId table contains information for program IDs and version independent program IDs that must be generated as a part of the product advertisement.

The ProgId table has the following columns.

Column Type Key Nullable
ProgId Text Y N
ProgId_Parent Text N Y
Class_ GUID N Y
Description Text N Y
Icon_ Identifier N Y
IconIndex Integer N Y

 

Columns

ProgId

The program ID or version independent program ID. ProgIds listed in the ProgId table are registered if the CLSID listed in the Class_column of this table is scheduled to be advertised or installed. When the ProgId is selected for registration, all ProgIds that refer to this row through the ProgId_Parent column are also selected for registration.

ProgId_Parent

Defined only for version independent program IDs. This field is a foreign key into the ProgId column. To define a version independent program ID, enter the corresponding ProgId into the ProgId_Parent column. When the ProgId is selected for installation, the corresponding version-independent ProgIds associated through the ProgId_Parent column are also selected for registration.

Class_

An optional foreign key into the Class table. This column must be Null for a version independent ProgId. If the Class_value for a ProgId is null, the ProgId is registered when it appears in the ProgId column of a row in the Extension table and the extension has at least one Verb associated with it in the Verb table. ProgIds selected for registration in this manner do not install other ProgIds that reference the current ProgId through the ProgId_Default value.

Description

An optional localized description of the associated program ID.

Icon_

An optional foreign key into the Icon table that specifies the icon file associated with this ProgId. This is written under the DefaultIcon key associated with this ProgId. This column must be Null for a version independent ProgId.

IconIndex

The Icon index into the icon file. This column must be Null for a version independent ProgId.

Remarks

The RegisterProgIdInfo and UnregisterProgIdInfo actions in sequence tables process the information in this table. For information about using sequence tables, see Using a Sequence Table.

Validation

ICE03
ICE06
ICE32
ICE36
ICE89