Archive File Format

A text archive file for a Windows Installer database carries an .idt file name extension. When an entire database is exported to archive files, each table in the database has a separate .idt file. If a table contains a stream column, each stream in the table is represented by a file with an .ibd file name extension. The .ibd files are stored in a folder with the same name as the table.

.idt File Format

The .idt file of an exported database table that contains only ASCII characters has the following basic format.

  • The first row contains the table column names separated by tabs.
  • The second row contains the column definitions separated by tabs.
  • If the file contain only ASCII data, the third row is table name and primary key column names separated by tabs.
  • The remaining rows in the file represent rows in the table, with columns separated by tabs.
Note  If the file contains non-ASCII data, the third row is the numeric code page followed by the table name and primary key column names separated by tabs. An .idt file that contains non-ASCII information should be saved in the ASCII format. For example, a text archive file can contain the column and table names encoded as UTF-8, but the archive file itself should be ASCII. See the section ASCII Data in Text Archive Files.
Note  The special _ForceCodepage and _SummaryInformation .idt files use extended formats. See the _ForceCodepage and _SummaryInformation sections for descriptions of their formats.

Column Definitions

Column definitions are indicated by characters.

  • The first character indicates the column type. A lowercase letter indicates a non-nullable column and an uppercase letter indicates that the column can contain null values.
    s, SString Column
    l, LLocalizable String Column
    v, VBinary Column
    i, IInteger Column


  • The second character indicates the column data size.
    Note  The Windows Installer does not actually use the specified column size to limit the size of the string that can be entered into a string column field. However, some authoring tools do use the specified column size to limit the size of a valid string. It is recommended that strings entered into any column meet the specified size requirement.
    Column DefinitionMeaning
    s255Non-Nullable String Column 255 long
    L50Nullable Localizable String Column 50 long
    i2, I2Short Integer Column
    i4, I4Long Integer Column


Control Character Translation

Exporting a table to a text archive file translates the control characters to avoid conflicts with file delimiters. While writing into the .idt file, the control characters are translated as follows.

Control CharacterTranslation in .idtMeaning
NULL 21Null
BS 27Back Space
HT 16Tab
LF 25Line Feed
FF 24Form Feed
CR 17Carriage Return