Signaturtabelle
Die Signaturtabelle enthält die Informationen, die eine Dateisignatur eindeutig identifizieren. Weitere Informationen zur Verwendung digitaler Signaturen finden Sie unter Digitale Signaturen und Windows Installer.
Die Signaturtabelle umfasst die folgenden Spalten.
Spalte | Typ | Schlüssel | Nullwerte zulässig |
---|---|---|---|
Signatur | Identifier | J | N |
FileName | Text | N | N |
MinVersion | Text | N | J |
MaxVersion | Text | N | J |
MinSize | DoubleInteger | N | J |
MaxSize | DoubleInteger | N | J |
MinDate | DoubleInteger | N | J |
MaxDate | DoubleInteger | N | J |
Sprachen | Text | N | J |
Spalten
-
Signature
-
Die Signaturspalte ist eine eindeutige Dateisignatur.
-
FileName
-
Der Name der Datei.
-
MinVersion
-
Die Mindestversion der Datei mit einem Sprachvergleich. Wenn dieses Feld angegeben ist, muss die Datei eine Version aufweisen, die mindestens MinVersion entspricht. Wenn die Datei eine gleiche Version wie der Wert des MinVersion-Felds aufweist, sich die in der Sprachspalte angegebene Sprache jedoch unterscheidet, erfüllt die Datei die Signaturfilterkriterien nicht.
Hinweis
Die in der Sprachspalte angegebene Sprache wird für den Vergleich verwendet und es ist nicht möglich, die Sprache zu ignorieren. Wenn eine Datei die Voraussetzung des MinVersion-Felds unabhängig von der Sprache erfüllen soll, müssen Sie einen Wert im MinVersion-Feld eingeben, der einen wert kleiner als der tatsächliche Wert ist. Wenn die Mindestversion für den Filter beispielsweise „2.0.2600.1183“ ist, verwenden Sie „2.0.2600.1182“, um die Datei zu suchen, ohne die Sprachinformationen zu entsprechen.
-
MaxVersion
-
Die Höchstversion der Datei. Wenn dieses Feld angegeben ist, muss die Datei eine Version aufweisen, die höchstens dem Wert von MaxVersion entspricht.
-
MinSize
-
Die Mindestgröße der Datei. Wenn dieses Feld angegeben ist, muss die zu überprüfende Datei eine Größe aufweisen, die mindestens dem Wert von MinSize entspricht. Dieser Wert darf keine negative Zahl sein.
-
MaxSize
-
Die maximale Größe der Datei. Wenn dieses Feld angegeben ist, muss die zu überprüfende Datei eine Größe aufweisen, die höchstens dem Wert von MaxSize entspricht. Dieser Wert darf keine negative Zahl sein.
-
MinDate
-
Das minimale Datum mit Uhrzeit der letzten Dateiänderung. Wenn dieses Feld angegeben ist, muss die zu überprüfende Datei einen Änderungszeitpunkt (Datum und Uhrzeit) aufweisen, der mindestens dem Wert von MinDate entspricht. Dieser Wert darf keine negative Zahl sein. Das Format dieses Felds besteht aus zwei gepackten 16-Bit-Werten vom Typ WORD. Der WORD-Wert höherer Ordnung gibt das Datum im MS-DOS-Datumsformat an. Der WORD-Wert niedriger Ordnung gibt die Zeit im MS-DOS-Zeitformat an. Ein Zeitwert von 0 gibt Mitternacht an. Weitere Informationen finden Sie im Abschnitt mit den Hinweisen.
-
MaxDate
-
Das maximale Erstellungsdatum der Datei. Wenn dieses Feld angegeben ist, muss die zu überprüfende Datei ein Erstellungsdatum aufweisen, das höchstens dem Wert von MaxDate entspricht. Dieser Wert darf keine negative Zahl sein. Das Format dieses Felds besteht aus zwei gepackten 16-Bit-Werten vom Typ WORD. Der WORD-Wert höherer Ordnung gibt das Datum im MS-DOS-Datumsformat an. Der WORD-Wert niedriger Ordnung gibt die Zeit im MS-DOS-Zeitformat an. Ein Zeitwert von 0 gibt Mitternacht an. Weitere Informationen finden Sie im Abschnitt mit den Hinweisen.
-
Sprachen
-
Die von der Datei unterstützten Sprachen.
Bemerkungen
Diese Tabelle wird zusammen mit der AppSearch-Tabelle verwendet.
Die Signatur wird mithilfe der RegLocator-Tabelle, der IniLocator-Tabelle, der CompLocator-Tabelle und der DrLocator-Tabelle gesucht. Die Spalten dieser Tabelle sind in der Regel nicht lokalisiert. Wenn ein Autor nach Produkten in verschiedenen Sprachen sucht, kann für jede Sprache ein separater Eintrag in die Tabelle aufgenommen werden.
Die Signaturtabelle folgt im Allgemeinen den Windows Installer-Dateiversionierungsregeln. Die in der Sprachspalte der Signaturtabelle angegebenen Sprachen werden nur ausgewertet, wenn die Dateiversionen gleichwertig sind. Die Sprachspalte stellt sicher, dass eine Datei eine bestimmte Sprache aufweist, wenn sie die angeforderte Version aufweist. Es ist nicht möglich, die Sprachspalte zu ignorieren. Ein in die Sprachspalte eingegebener NULL-Wert wird als Datei ohne Sprache behandelt und entspricht nicht der Dateisignatur einer Datei mit einer Sprache, die in der Signaturtabelle angezeigt wird. Im folgenden Beispiel wird nach einer bestimmten Version von MSI.DLL gesucht.
Signature_ | Parent | Pfad | Tiefe |
---|---|---|---|
MsiDll | {null} | c:\windows\system32 | 0 |
Eigenschaft | Signature_ |
---|---|
MSIDLL | MsiDll |
Signaturtabelle
Signatur | FileName | MinVersion | MaxVersion | MinSize | MaxSize | MinDate | MaxDate | Sprachen |
---|---|---|---|---|---|---|---|---|
MsiDll | msi.dll | 2.0.2600.1106 | {null} | {null} | {null} | {null} | {null} | 0 |
In diesem Fall und unter Windows XP SP1 legt die AppSearch-Aktion den MSIDLL-Wert auf „c:\windows\system32\msi.dll“ fest, da msi.dll eine sprachneutrale Datei ist. Wenn der Wert der Sprachspalte von 0 zu 1033 geändert wird, kann die AppSearch-Aktion die übereinstimmende msi.dll-Datei nicht finden und die MSIDLL-Eigenschaft ist nicht definiert.
Sie können die Signaturtabelle nicht nur zum Abfragen von Sprachen verwenden. Um nach verschiedenen Sprachversionen einer Datei zu suchen, muss für jede Sprachversion ein separater Eintrag in der Signaturtabelle vorhanden sein. Wenn in der Sprachspalte mehrere Sprachen angegeben sind, wird nach einer Datei gesucht, die alle diese Sprachen unterstützt.
Das Format der Spalten „MinDate“ und „MaxDate“ sind zwei gepackte 16-Bit-Werte vom Typ WORD.
Datum-WORD
Bits | Inhalt |
---|---|
0–4 | Tag des Monats (1–31) |
5–8 | Monat (1 = Januar, 2 = Februar usw.) |
9–15 | Jahresversatz von 1980 (1980 addieren, um das tatsächliche Jahr zu erhalten) |
Zeit-WORD
Bits | Inhalt |
---|---|
0–4 | Sekunden, geteilt durch 2 |
5-10 | Minuten (0–59) |
11–15 | Stunde (0–23 für 24-Stunden-Zeit) |
Die Formel zum Berechnen der Feldwerte MinDate und MaxDate lautet:
( (Jahr - 1980) * 512 + Monat * 32 + Tag ) * 65536 + Stunden * 2048 + Minuten * 32 + Sekunden/2
Validierung