What is It?
WiX Toolset helps building processes to create Windows installation packages from XML. The toolset provides both a command line environment that developers may either integrate into their old style Makefile build processes or use the newer MSBuild technology from inside integrated development environments like Microsoft Visual Studio or SharpDevelop to build their MSI and MSM setup packages.
The source is available for download here.
How to Install Silently?
To Install:
Step1: Download the source from web and get the installer wix311.exe.
Step2: Run following command:wix311.exe /install /quiet /norestart
Step 3: Copy the Votive2017.vsix file (provided by vendor) to the local machine (e.g. %TEMP%)
Step 4: Run VSIXinstaller from its stored location
Step2: Run following command:wix311.exe /install /quiet /norestart
Step 3: Copy the Votive2017.vsix file (provided by vendor) to the local machine (e.g. %TEMP%)
Step 4: Run VSIXinstaller from its stored location
"%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Professional\Common7\IDE\VSIXInstaller.exe" <path of VSIX file> /quiet
To Uninstall:
Run following two commands:
1. "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Professional\Common7\IDE\VSIXInstaller.exe" /u:WixToolset.VisualStudioExtension.Dev15 /quiet
2. wix311.exe /uninstall /quiet /norestart
/uninstall - to initiate uninstall
/quiet - for no UI uninstall
/norestart - to suppress restart (if installer requires)
Additional Notes:
- Following install/uninstall instructions are created based on version 3.11 of WiX Toolset.
- Ensure that Visual Studio (devenv.exe) isn't running when installing extensions.
Note: This can be taken care by a new feature introduced from SCCM 1702 onwards. "Install Behavior" option under "Deployment Method" enables process kill before install process executes. So, people using SCCM latest version, can use this feature rather than Taskkill in Windows.
- Command executions are based on SCCM platform or used with tools like PsExec, to make them run in System Context only.
- Detection Method for SCCM:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{b11db4da-bf93-467a-aad4-798f8de2cc0e} - This being an extension, and not a standalone application, needs Visual Studio Professional 2017 as a prerequisite.
- Make sure the extension (WiX) gets triggered for uninstall before VS 2017 as the former is an extension of the latter.
VS 2017 getting removed before WiX deletes the entire directory structure keeping "%ProgramFiles(x86)%\Microsoft Visual Studio\2017" folder empty. Hence, the installer of Wix, which resides in this location, does not get triggered during its uninstall command execution. And hence the detection method keeps calling SCCM that WiX is still present in the machine.
'NotInstalledException' error appears in its log and VSIXInstaller.exe returns code 1002 in this scenario, which we can map to success in SCCM, with installer file based Detection Method - reference
The silent install using "wix311.exe /install /quiet /norestart" does not work for me. Has anyone been able to get silent install to work recently?
ReplyDelete