AppSearch Table

The AppSearch table contains properties needed to search for a file having a particular file signature. The AppSearch table can also be used to set a property to the existing value of a registry or .ini file entry.

The AppSearch table has the following columns.

Column Type Key Nullable
Property Identifier Y N
Signature_ Identifier Y N




Running the AppSearch action sets this property to the location of the file indicated by the Signature_ column. This property is set if the file signature exists on the user's computer. The properties used in this column must be public properties and have an identifier that contains no lowercase letters.

The property listed in the Property field may be initialized in the Property table or from a command line. If the AppSearch action locates the signature, the installer overrides the initialized property value with the found value. If the signature is not found, then the initial property value is used. If the property was never initialized, then the property will only be set if the signature is found. Otherwise, the property is undefined.


The Signature_ column contains a unique identifier called a signature and is also an external key into the RegLocator, IniLocator, CompLocator, and DrLocator tables. When searching for a file, the value in this column must also be a foreign key into the Signature table. If the value in this column is not listed in the Signature table, the installer determines that the search is for a directory.


The AppSearch action in sequence tables processes the information in this table. For information about using sequence tables, see Using a Sequence Table.

The AppSearch action searches for signatures using the CompLocator table first, the RegLocator table second, the IniLocator table third, and finally the DrLocator table. File signatures are listed in the Signature table. A signature that is not in the Signature table denotes a directory and the action sets the property to the directory path for that signature.

See Searching for Existing Applications, Files, Registry Entries or .ini File Entries.