TypeLib Table

The TypeLib table contains the information that needs to be placed in the registry registration of type libraries.

The TypeLib table has the following columns.

Column Type Key Nullable
LibID GUID Y N
Language Integer Y N
Component_ Identifier Y N
Version DoubleInteger N Y
Description Text N Y
Directory_ Identifier N Y
Feature_ Identifier N N
Cost DoubleInteger N Y

 

Columns

LibID

The GUID that identifies the library.

Language

The language of the type library. This must be a non-negative number.

Component_

External key into the first column of the Component table. This column identifies the component belonging to Feature_ whose key file is the type library being registered.

Version

This is the version of the library. The major and minor versions are encoded in the four byte integer value. The minor version is in the lower eight bits. The major version is in the middle sixteen bits.

Description

A localizable description of the library.

Directory_

External key into the first column of the Directory table. This column identifies the Help path for the type library. This column is ignored during advertising.

Feature_

External key into the first column of the Feature table. This column specifies the feature that must be installed for the type library to be operational.

Cost

The cost associated with the registration of the type library in bytes. This must be a non-negative number or null.

Remarks

This table is referred to when the RegisterTypeLibraries action or the UnregisterTypeLibraries action is executed.

The installer writes all type library registration information into the HKEY_LOCAL_MACHINE (HKLM) registry location. This is the case even for per-user installations. Type libraries cannot be registered in per-user locations (HKCU).

Installation package authors are strongly advised against using the TypeLib table. Instead, they should register type libraries by using the Registry table. Reasons for avoiding self registration include:

  • If an installation using the TypeLib table fails and must be rolled back, the rollback may not restore the computer to the same state that existed prior to the rollback. Type libraries registered prior to rollback may not be registered after rollback.

Validation

ICE03
ICE06
ICE19
ICE32