Windows Installer XML
Windows Installer XML
| |
---|---|
![]() | |
Basisdaten
| |
Entwickler | Outercurve Foundation |
Aktuelle Version | 3.11.1 (Stable) (31. Dezember 2017) |
Aktuelle Vorabversion | 4.0.0.5918 18. November 2017 |
Betriebssystem | Windows |
Programmiersprache | C++, C#[1] |
Kategorie | Softwaretechnik |
Lizenz | Microsoft Reciprocal License |
deutschsprachig | nein |
wixtoolset.org |
Windows Installer XML (kurz WiX Toolset) ist eine Programmsammlung zur Erstellung von Windows-Installer-Paketen (MSI-, MSP-, MSM- und MST-Dateien) mit Hilfe von XML-Dateien.
WiX wurde ursprünglich bei Microsoft entwickelt und ist das erste Programm von Microsoft, das als freie Software veröffentlicht wurde. Als es am 31. März 2004 bei SourceForge registriert wurde, sorgte das für großes Aufsehen. Im September 2012 wurde das WiX-Projekt von Microsoft an die Outercurve Foundation übertragen. Derzeit wird WiX bei CodePlex gehostet,[2] worauf ein symbolischer HTML-Download auf der SourceForge-Präsenz hinweist. Die Verwaltung des Quellcodes findet sich seit März 2014 auf GitHub.[3]
Eine grafische Benutzeroberfläche existiert nur in Form eines Plug-ins für Visual Studio mit dem Namen Votive.
Programmstruktur
WiX setzt sich aus verschiedenen Komponenten zusammen, deren Namen sich aus einem Wortspiel mit „wicks“ (englisch für Kerzendochte) herleiten:
- Candle (englisch Kerze), der Compiler, wird benutzt, um die XML-Dokumente zu Objektdateien zu kompilieren, die Symbole und Referenzen zu Symbolen beinhalten.
- Light (englisch Licht), der Linker, nimmt ein oder mehrere Objektdateien und verbindet die Referenzen in den Objektdateien mit den richtigen Symbolen aus anderen Objektdateien. Light ist ebenfalls dafür verantwortlich, die Binärdateien zu verwalten, sie richtig zu verarbeiten und schließlich daraus eine MSI- oder MSM-Datei zu generieren.
- Lit (vgl. Literatur, engl. beleuchtet), das Bibliothekswerkzeug, ist ein optionales Werkzeug, mit dem man mehrere Objektdateien zu Bibliotheken kombinieren kann, die mit Light geparst werden können.
- Burn (englisch Verbrennung), die Burn-Engine ist ein Bootstrapper zur Vorabinstallation erforderlicher Grundlagen wie fehlender Laufzeitumgebungen oder Bibliotheken, ebenso ermöglicht diese das Aneinanderreihen mehrerer Installationspakete (beispielsweise MSI- und MSP-Dateien oder klassische EXE-Installationen).
- Dark (englisch Dunkelheit), der Decompiler, nimmt existierende MSI- und MSM-Dateien und erstellt XML-Dokumente, die das Paket repräsentieren.
- Tallow (englisch Talg) und Heat (englisch Hitze) – Tallow ist ein Werkzeug, um XML-Script für WiX-Dateilisten zu erzeugen und in einen Verzeichnisbaum zu überführen. Es produziert ein WiX „Fragment“, welches mit anderen WiX-Quellcode-Dateien zur Compilezeit vereinigen kann. Ab WiX 3.0 übernimmt dies das sogenannte Heat-Werkzeug, welches noch besser funktionieren soll. Es existiert auch eine inoffizielle Version von Tallow, bekannt unter „Mallow“, welches über Synchronisationsfähigkeiten und verbesserte Komponenten-ID verfügt.
Weitere Komponenten im 3.x-Zweig sind die Werkzeuge Insignia, Melt, Torch, Smoke, Pyro, WixCop, WixUnit, Lux und Nit (siehe Kurzbeschreibungen [4]).
Sicherheit
Mit Versionen vor 3.10.2 erstellte ausführbare Installationsprogramme haben bekannte Sicherheitslücken.[5][6]
Siehe auch
Alternative Anwendungen zur Erstellung von Installationspaketen für Microsoft Windows:
- Nullsoft Scriptable Install System (NSIS), freies Installationssystem für Windows und Linux
- Inno Setup, freies skript-basiertes Installationssystem für Windows
- InstallShield, proprietäres Installationssystem für Windows
Weblinks
- WiX-Projektseite
- WiX-Projektseite auf CodePlex
- Blog-Eintrag von Entwickler Rob Mensching zur Veröffentlichung
- Artikel von Andreas Kerl aus der dotnetpro Zeitschrift (PDF; 199 kB)
- Wax - Freie Visual-Studio Erweiterung, interaktive Version von "Heat"
- Blog-Eintrag bei Outercurve zum Umzug des WiX Projekts von Microsoft zu Outercourve
- Blog-Eintrag von Rob Mensching zur Lizenz-Änderung
Einzelnachweise
- ↑ The wix Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 18. Juli 2018).
- ↑ WiX toolset on CodePlex
- ↑ github.com: WiX Toolset
- ↑ http://wixtoolset.org/documentation/manual/v3/overview/alltools.html
- ↑ WiX v3.10.2 released
- ↑ BugTraq: Executable installers are vulnerable^WEVIL (case 3): WiX Toolset's bootstrapper "burn.exe"