Anpassen einer ursprünglichen Datenbank
Erstellen Sie eine Kopie des Windows Installer-Beispielinstallationspakets „MNP2000.msi“, und benennen Sie diese Kopie in „MNP2000t.msi“ um. In den folgenden Schritten passen Sie diese Datei mithilfe eines Datenbanktabellen-Editors wie dem mit dem SDK bereitgestellten Editor Orca oder einem anderen Datenbank-Editor an.
Fügen Sie die neue Ressourcendatei „Phone.txt“ für die Telefonliste in den Editor-Ordner mit den anderen Quelldateien ein.
Datei | BESCHREIBUNG | Pfad zur Quelle | Pfad zum Ziel |
---|---|---|---|
phone.txt | Eine Ressource für das Feature Phone_List. | C:\Sample\Notepad\phone.txt | [ProgramFilesFolder]\Red_Park\phone.txt |
Verwenden Sie Ihren Datenbank-Editor, um der Tabelle File von „MNP2000t.msi“ einen Datensatz für die neue Datei hinzuzufügen.
Datei | Component_ | FileName | FileSize | Version | Sprache | Attribute | Sequenz |
---|---|---|---|---|---|---|---|
Phone.txt | Phone | Phone.txt | 1000 | 0 | 1 |
Wie im Abschnitt Verwenden von Transformationen zum Hinzufügen von Ressourcen erläutert, sollte die Transformation der Installationsdatenbank, die das neue Telefonlistenfeature enthalten soll, neue Komponenten hinzufügen. Fügen Sie mit Ihrem Datenbank-Editor der Tabelle Component von „MNP2000t.msi“ den folgenden Datensatz hinzu.
Die Phone-Komponente sollte mit einer eindeutigen GUID als Komponenten-ID identifiziert werden. Wenn Sie das Beispiel reproduzieren, verwenden Sie nicht dieselbe GUID wie in der folgenden Tabelle. Verwenden Sie stattdessen ein Hilfsprogramm wie „Guidgen.exe“, um eine neue GUID zu generieren. Stellen Sie sicher, dass Sie eine GUID-Zeichenfolge verwenden, die mit dem GUID-Datentyp von Windows Installer konsistent ist.
Tabelle Component
Komponente | ComponentId | Directory_ | Attribute | Bedingung | Keypath |
---|---|---|---|---|---|
Phone | {D152A1EC-9F7A-4E45-B0DC-ED6EE5D829F8} | NOTEPADDIR | 2 | Phone.txt |
Ändern Sie mit Ihrem Datenbank-Editor die Daten in der Tabelle Feature von „MNP2000t.msi“. Geben Sie in der Spalte „Level“ des Datensatzes für das Gate-Feature „0“ ein. Dadurch werden das Gate-Feature und die zugehörigen untergeordneten Features deaktiviert und auf der Benutzeroberfläche ausgeblendet. Beachten Sie, dass das Installationsprogramm keine Features auf Ebene 0 installiert, da die INSTALLLEVEL-Eigenschaft in der Tabelle Property auf „3“ festgelegt ist. Fügen Sie einen Datensatz für das neue Feature Phone_List hinzu.
Tabelle Feature
Funktion | Feature_Parent | Titel | BESCHREIBUNG | Anzeige | Ebene | Directory_ | Attribute |
---|---|---|---|---|---|---|---|
Kunst | Kunst | Kunstveranstaltungen im Red Park. | 20 | 3 | NOTEPADDIR | 0 | |
Baseball | Sport | Baseball | Baseball-Spiele | 17 | 3 | SPORTDIR | 32 |
Konzert | Kunst | Konzert | Konzertveranstaltungen im Red Park | 21 | 3 | ARTSDIR | 2 |
Tanz | Kunst | Tanz | Tanzveranstaltungen im Red Park | 23 | 3 | ARTSDIR | 2 |
Football | Sport | Football | Football-Spiele | 19 | 3 | SPORTDIR | 2 |
Gate | Gate | Eintritt im Red Park | 6 | 0 | NOTEPADDIR | 0 | |
Hilfe | Notepad | Hilfe | Hilfedatei. | 5 | 3 | NOTEPADDIR | 1 |
January | Gate | January | Eintritt im Januar | 10 | 3 | MONDIR | 2 |
NewYears | January | Neujahrstag | Eintritt am Neujahrstag | 11 | 3 | HOLDIR | 2 |
Notepad | Notepad | Notepad (Editor) | 1 | 3 | NOTEPADDIR | 0 | |
Infodatei | Notepad | Infodatei | Infodatei | 3 | 3 | NOTEPADDIR | 0 |
Sport | Sportveranstaltungen | Sportveranstaltungen im Red Park | 14 | 3 | NOTEPADDIR | 0 | |
Phone_List | Telefonliste | Telefonliste | 24 | 3 | NOTEPADDIR | 0 |
Fügen Sie der Tabelle FeatureComponents von „MNP2000t.msi“ den folgenden Datensatz hinzu.
Tabelle FeatureComponents
Feature_ | Component_ |
---|---|
Phone_List | Phone |
Fügen Sie einen neuen Datensatz in der Tabelle Shortcut hinzu, um eine Verknüpfung zum Feature Phone_List zu erstellen.
Tabelle Shortcut
Verknüpfung | Directory_ | Name | Component_ | Ziel | Argumente | BESCHREIBUNG | Hotkey | Icon_ | IconIndex | ShowCmd | WkDir |
---|---|---|---|---|---|---|---|---|---|---|---|
sPhone | MENUDIR | Phone.txt | Phone | [#Phone.txt] |