InstallerTaskBase.

InstallerTablesElement Property

Summary

Creates custom tables not directly managed by default features of the installer task.

Parameters

Attribute Type Description Required
name string A unique name used to identify the table. True

Nested Elements:

<columns>

    <column>

      Defines the columns making up the table

      Parameters

      Attribute Type Description Required name string A unique name used to define the column. True nullable bool When set to true, allows the column to accept null values; false does not allow null values. True category msi:MSITableColumnCategoryType Valid input: Text UpperCase LowerCase Integer DoubleInteger Time/Date Identifier Property Filename WildCardFilename Path Paths AnyPath DefaultDir RegPath Formatted Template Condition GUID Version Language Binary Cabinet Shortcut More information here: http://msdn.microsoft.com/library/en-us/msi/setup/column_data_types.asp False type string Overrides the category specification. An example of valid input would be: S255 False key bool When set to true, the column is used to form the primary key for the table; false specifies that the column is not used to form the primary key. False minvalue int This field applies to columns having numeric value. The field contains the minimum permissible value. This can be the minimum value for an integer or the minimum value for a date or version string. False maxvalue int This field applies to columns having numeric value. The field is the maximum permissible value. This may be the maximum value for an integer or the maximum value for a date or version string. False keytable string This field applies to columns that are external keys. The field identified in Column must link to the column number specified by KeyColumn in the table named in KeyTable. This can be a list of tables separated by semicolons. False keycolumn int This field applies to table columns that are external keys. The field identified in Column must link to the column number specified by KeyColumn in the table named in KeyTable. The permissible range of the KeyColumn field is 1-32. False set string This is a list of permissible values for this field separated by semicolons. This field is usually used for enums. False description string A description of the data that is stored in the column. False

    </column>

</columns>

<rows>

    <row>

      Defines the data for a row in the table

      <columns>

        <column>

          Defines data for a specific cell in the row

          Parameters

          Attribute Type Description Required name string Name of the column to populate. True value string Value to populate the cell with. True

        </column>

      </columns>

    </row>

</rows>

Examples

Build the IniFile table. Since the WriteIniValues and RemoveIniValues actions exist in the template, they will use this table. <tables> <table name="IniFile"> <columns> <column name="IniFile" nullable="false" category="Identifier" key="true" description="The key for this table." /> <column name="FileName" nullable="false" category="Text" description="The localizable name of the .ini file in which to write the information. " /> <column name="DirProperty" nullable="true" category="Identifier" description="Name of a property having a value that resolves to the full path of the folder containing the .ini file. " /> <column name="Section" nullable="false" category="Formatted" description="The localizable .ini file section." /> <column name="Key" nullable="false" category="Formatted" description="The localizable .ini file key within the section" /> <column name="Value" nullable="false" category="Formatted" description="The localizable value to be written. " /> <column name="Action" nullable="false" category="Integer" description="The type of modification to be made. " /> <column name="Component_" nullable="false" category="Identifier" description="External key into the first column of the Component table referencing the component that controls the installation of the .ini value. " /> </columns> <rows> <row> <columns> <column name="IniFile" value="MyInternetShortcut" /> <column name="FileName" value="MyInternetAddr.url" /> <column name="DirProperty" value="D__MYDIR" /> <column name="Section" value="InternetShortcut" /> <column name="Key" value="URL" /> <column name="Value" value="[TARGETURL]" /> <column name="Action" value="0" /> <column name="Component_" value="C__Documentation" /> </columns> </row> </rows> </table> </tables>
Assembly
NAnt.Contrib.dll
Namespace
NAnt.Contrib.Tasks.Msi
Containing Type
InstallerTaskBase

Syntax

[BuildElement("tables", ProcessXml = false)]
public SchemaElement[] InstallerTablesElement { get; set; }

Attributes

Type Description
BuildElement

Value

Type Description
SchemaElement[]