Wix & T4: keine "Custom Tool" -Option

8

Ich möchte ein Fragment mit T4 generieren, aber nach dem Hinzufügen einer. Tt-Datei zum Wix-Projekt gibt es keine "Custom Tool" -Option für diese Datei. Und wenn Sie mit der rechten Maustaste auf die .tt-Datei klicken, gibt es keinen Menüeintrag "Custom-Tool ausführen".

Gibt es dafür einen Hack? Ich benutze VS 2010 und das neueste Wix 3.5

    
Catalin DICU 01.09.2010, 16:34
quelle

4 Antworten

3

Das Wix VS-Projektsystem unterstützt leider keine Generatoren für einzelne Dateien, so dass Sie nicht die Standard-T4-Erfahrung erhalten.

Sie haben ein paar Möglichkeiten. Oleg Sychs T4Toolbox verfügt über Werkzeuge, um Templates auszuführen, die auf andere Projekte abzielen, sodass Sie sie in einem Projekt ausführen und die Ausgabe auf Ihr WiX-Projekt ausrichten können.

Alternativ dazu hat T4 eine einfache Service API STextTemplating. Sie könnten ein kleines VS-Add-In schreiben, das die von Ihnen gewünschte Generation in Ihrem Wix-Projekt verwendet.

    
GarethJ 12.09.2010 02:37
quelle
1

Ich habe noch nie T4 benutzt, ganz zu schweigen von WiX, aber ein Google bringt mehrere interessante Hits hervor, darunter der letzte, der fragt, was du fragst, aber niemand kennt die Antwort.

T4 Vorlage zum Generieren von Wix-Skripts zum Generieren von WCF-MSIs in MSBuild

Verwenden von MSBuild und Wix zum Erstellen von MSI Paket ...

[WiX-Benutzer] WiX 3.0-Unterstützung für T4-Vorlagen in Visual Studio 2008] 3

    
Christopher Painter 01.09.2010 18:34
quelle
1

Mit Gareths Vorschlag der T4-Toolbox konnte ich eine T4-Vorlage laden, aber die Datei wurde nicht wie erwartet erzeugt.

Am Ende habe ich mit meinen Vorlagen ein Stub-C # -Klasse-Projekt erstellt und einen Post-Build-Befehl ausgeführt, um die Ausgabe in das WiX-Installationsprogramm zu kopieren. Unten ist ein funktionierendes Beispiel.

WiX + T4 Beispiel

Hier ist ein schnell-und-schmutzig-Skripte, die eine Ordnerstruktur führt und alles enthält, was in ausgeschlossenen Dateien ist. Es ist zumindest ein guter Ausgangspunkt für das Hinzufügen von Dateien zu Ihrem Projekt auf Ordnerbasis.

GetFiles.ttinclude - Hilfsprogramme, um die Verzeichnisstruktur zu verwalten und die Liste der Dateien zu verwalten

Files.tt - Generiere WiX Include

    
Brian 17.03.2012 18:53
quelle
1

Wenn Sie ein anderes Projekt in derselben Lösung haben (oder erstellen können), das T4-Vorlagen unterstützt, gibt es einen einfachen Weg dazu.

  1. Erstellen Sie die T4-Vorlage irgendwo in diesem Projekt
  2. Fügen Sie im WIX-Projekt die Ausgabedatei als Verknüpfung hinzu (Rechtsklick auf Projekt, Vorhandenes Objekt hinzufügen, Als Verknüpfung hinzufügen)
Cyanfish 11.05.2015 07:28
quelle

Tags und Links