Industrial Strength Windows Installer XML ( IsWiX ) makes authoring Windows Installer XML (WiX) Windows Installers (.MSI) a breeze. It includes Visual Studio project templates and graphical designers to aid you in authoring 95% of your source code. From there you can author additional code using standard WiX programming techniques.
Starting with v6, IsWiX is only distributed via the Visual Studio Marketplace as a Visual Studio 2022/2026 Extension. You can find it here.
Please see our tutorials to learn how to get started.
The version lives in Directory.Build.props; the release workflow also writes it into the VSIX manifest
(IsWiXExtension/source.extension.vsixmanifest) and IsWiXExtension/Properties/AssemblyInfo.cs.
- CI (
.github/workflows/ci.yml) runs on every push todevand every pull request todevormain: it buildsIsWiX.sln, publishes IsWiX intoIsWiXExtension\IsWiX(theFolderProfilepublish profile), buildsIsWiXExtension.slnand uploads the unsigned VSIX as a build artifact. - Publish (
.github/workflows/publish.yml) is run by hand from the Actions tab onmain: choosepatch,minorormajor. It increments the version, builds, signs the VSIX and IsWiX's own assemblies inside it with Azure Artifact Signing (thesignCLI; third-party DLLs keep their publishers' signatures), commitsRelease x.y.ztomain, tags itvx.y.zand creates a GitHub release with the signed VSIX attached. Uploading that VSIX to the Visual Studio Marketplace is done by hand.
The publish workflow needs the AZURE_CLIENT_ID, AZURE_TENANT_ID and AZURE_SUBSCRIPTION_ID
repository secrets, and an Azure federated credential for this repository's main branch with the
Artifact Signing Certificate Profile Signer role on the ISWIX-LLC account.
Set the environment variable ISWIX_TRACE to 1 before starting Visual Studio and the extension writes what the .wxs
editor and its designers are doing to an IsWiX pane of the Output window: when a designer's selection and the XML
caret are linked, why one was not followed, the commands (such as Go to Definition) the editor was asked to run, and the
component groups found in the project. It is off, and costs nothing, otherwise. Visual Studio's activity log
(devenv /log) also records the editor's main events.