Einbeziehung einer Schränkdatei in eine Installation

In diesem Abschnitt wird die Einbeziehung von Schränkendateien in Installationen beschrieben. Weitere Informationen finden Sie unter Verwenden von Schränken und komprimierten Quellen.

So schließen Sie eine Schränkdatei in ein Installationspaket ein

  1. Verwenden Sie ein Tool für die Schränkerstellung, um die Quelldateien in eine Schränkdatei zu komprimieren. Weitere Informationen finden Sie unter Cabinet Files.
  2. Die Schränkdatei muss sich entweder in einem Datenstrom innerhalb der .msi-Datei oder in einer separaten Cabinet-Datei befinden, die sich im Stamm der quellstruktur befindet, die durch die Verzeichnistabelle angegeben wird.
  3. Bestimmen Sie, ob die Quelle ein komprimierter Typ oder ein gemischter Typ sein soll, der sowohl unkomprimierte als auch komprimierte Dateien enthält. Siehe Compressed and Uncompressed Sources (Komprimierte und nicht komprimierte Quellen). Legen Sie abhängig vom Typ des Quellbilds die komprimierten oder unkomprimierten Flagbits der Eigenschaft Zusammenfassung der Wortanzahl fest.
  4. Fügen Sie der Tabelle File einen Datensatz für jede der Dateien in der Schränkung hinzu. Geben Sie in der Spalte Datei einen Dateischlüssel ein, der genau mit dem Dateischlüssel der Datei im Schränken entspricht. Bei den Dateischlüsseln wird die Kleinschreibung beachtet. Die Dateiinstallationssequenz in der Dateitabelle und der Schränkung muss ebenfalls identisch sein. Die Dateisequenz wird von der Sequenznummer in der Spalte Sequenz angegeben. Gehen Sie wie folgt vor, um die Sequenznummer für die erste Datei in der Schränkung zu erreichen. Suchen Sie den vorhandenen Datensatz in der Media-Tabelle mit dem größten Wert in der DiskID-Spalte. Das Feld LastSequence dieses Datensatzes gibt die letzte Dateisequenznummer an, die auf dem Medium verwendet wird. Weisen Sie in der Tabelle Datei der ersten Datei des neuen Schränks eine Sequenznummer zu, die größer als diese ist. Weisen Sie allen verbleibenden Dateien Sequenznummern in der gleichen Reihenfolge wie in der Schränkdatei zu. Eine Beschreibung der verbleibenden Datensatzfelder finden Sie unter Dateitabelle.
  5. Fügen Sie der Media-Tabelle für die Schränkung einen Datensatz hinzu. Geben Sie im Feld DiskID dieses neuen Datensatzes einen Wert an, der größer ist als der größte DiskID-Wert, der bereits in der Tabelle vorhanden ist. Geben Sie den Namen des Schränks in das Feld "Cabinet" ein. Dieser Name muss in Form eines Cabinet-Datentyps sein. Stellen Sie dem Namen das Nummernzeichen "" voran, wenn es sich bei der Schränkung um einen datenstrom handelt, der in der .msi # ist. Beachten Sie, dass beim Namen des Schränkes die Schreibung beachtet wird, wenn es sich bei der Schränkung um einen Datenstrom handelt. Wenn es sich bei der Schränkung um eine separate Datei handelt, wird beim Namen der Datei die Schreibung nicht beachtet.
  6. Ermitteln Sie die größte Dateisequenznummer im neuen Schaltkreis, indem Sie die Spalte Sequenz der aktualisierten Dateitabelle überprüfen. Geben Sie im Feld LastSequence des neuen Datensatzes der Media-Tabelle einen Wert ein, der größer als dieser wert ist. Eine Beschreibung der verbleibenden Datensatzfelder finden Sie unter Medientabelle.
  7. Sie können die Schränkdatei entweder mithilfe eines Tools wie Msidb.exe oder mithilfe der Datenbankfunktionen des Installationsprogramms im Installationspaket speichern. In den folgenden vier Schritten wird erläutert, wie das Schränk aus einem Programm mithilfe der Datenbankfunktionen hinzugefügt wird.
  8. Öffnen Sie mit msiDatabaseOpenVieweine Ansicht _ in der Tabelle Streams der Datenbank, um die Schränkung dem Installationspaket aus einem Programm hinzuzufügen.
  9. Verwenden Sie MsiRecordSetString, um die Spalte Name der Streams-Tabelle auf den Namen in der _ Spalte "Cabinet" der Media-Tabelle zu setzen. Weglassen des Nummernzeichens: # .
  10. Verwenden Sie MsiRecordSetStream, um die Datenspalte der Streams _ tabelle auf die Daten des Schränkens zu setzen.
  11. Verwenden Sie MsiViewModify, um den Datensatz in der tabelle Streams _ aktualisieren.
  12. Verwenden Sie Msidb.exe befehlszeile, um die Mycab.cab-Datei Mycab.cab dem Installationspaket mit dem Namen Mydatabase.msi hinzuzufügen: Msidb.exe -d mydatabase.msi -a mycab.cab. In diesem Fall sollte die Spalte "Cabinet" der Media-Tabelle die folgende Zeichenfolge enthalten: #mycab.cab.