WiX automatische Dateieinbindung

8

Gibt es eine Möglichkeit, Dateien automatisch basierend auf der Verzeichnisstruktur einzuschließen?

Ich möchte nicht jeden Dateinamen mit der Registerkarte "Datei-ID" hinzufügen.

Mein Build-Prozess erstellt die erforderliche Verzeichnisstruktur:

%Vor%

Wie kann ich diese Verzeichnisse und ihre Unterverzeichnisse hinzufügen?

    
Avinash 17.10.2009, 17:28
quelle

2 Antworten

6

Nein, nicht automatisch. Es gibt jedoch einige Tools ("Talg" für Wix "oder" Heat "für Wix3), die ein Verzeichnis durchsuchen und ein Wix-Fragment (eine separate WiX * .wxs-Datei) für Sie erstellen. Sie können dann diese" Dateiliste "kompilieren. wxs "-Datei (oder wie Sie es nennen) in Ihre WiX-Installation ein.

Siehe diese Seite für die WiX3 Heat-Dokumentation und es sollte auch ein WiX2-Äquivalent für Talg enthalten sein diese Seite.

Marc

    
marc_s 17.10.2009, 19:49
quelle
16

Es gibt auch Paraffin von John Robbins . Es hat einige nette Eigenschaften:

  

Mein Ziel für PARAFFIN.EXE war, dass es sofort verbrauchbare WiX-Fragmente mit minimalem Aufwand aufbaute. Ich wollte, dass PARAFFIN.EXE die folgenden Anforderungen erfüllt, um zunächst ein WXS-Fragment für ein Verzeichnis zu erstellen:

     
  • PARRAFIN.EXE hat eindeutige Werte für das Komponentenattribut, das Verzeichnis und die Dateielement-ID-Attribute erstellt, sodass Sie sich keine Gedanken über Konflikte in großen Projekten machen müssen
  •   
  • PARAFIN.EXE erstellt ein ComponentGroup-Element in der Ausgabedatei, wobei alle Komponentenelemente in der Datei automatisch mit ComponentRef-Werten
  • angegeben werden   
  • Sie können optional bestimmte Dateierweiterungen vom Hinzufügen zum .WXS-Fragment
  • ausschließen   
  • Sie können Verzeichnisse optional von der Aufnahme ausschließen, indem Sie einen Teilnamen angeben
  •   
  • Sie können optional angeben, ob GUID-Werte automatisch für alle Komponenten
  • generiert werden sollen   
  • Sie können optional mehrere Dateien pro Komponente angeben (der Standardwert ist eine Datei pro Komponente)
  •   
  • Sie können optional angeben, dass Sie keine anderen Verzeichnisse als das angegebene
  • recursen möchten   
  • Sie können beim Festlegen des Attributs File element - - Source optional einen Alias ​​für den Verzeichnisnamen angeben, damit in der Ausgabe .WXS-Datei
  • keine fest codierten Laufwerks- und Verzeichnisnamen vorhanden sind   

Nachdem Sie ein .WXS-Fragment mit PARAFFIN.EXE erstellt haben, möchten Sie das Fragment nicht manuell bearbeiten müssen. Daher wollte ich, dass PARAFFIN.EXE die folgenden Anforderungen zum Erstellen einer aktualisierten Ausgabedatei aus einem vorhandenen Dokument erfüllt .WXS-Fragment:

     
  • Die aktualisierte Ausgabe wird in eine .PARAFFIN-Datei geschrieben, sodass das ursprüngliche WXS-Fragment nicht gestört wird
  •   
  • Alle beim Erstellen des ursprünglichen WXS-Fragments angegebenen Befehlszeilenoptionen werden beim Aktualisieren einer von PARAFFIN.EXE
  • erstellten Datei automatisch festgelegt   
  • Alle gefundenen neuen Verzeichnisse und Dateien werden automatisch zur Ausgabedatei
  • hinzugefügt   
  • Alle Verzeichnisse und Dateien, die nicht mehr Teil der Verzeichnisstruktur sind, werden aus der Ausgabedatei
  • entfernt   
    
Magnus Lindhe 23.10.2009 07:16
quelle

Tags und Links