Installer/WiX/README.md
MSI installer was an experimental and is now outdated.
The main installer script is in Installer/WIX folder: WinMerge.wxs. This file includes other needed files.
First make sure you have all needed files compiled and available:
WinMergeU.exe/Translations/WinMerge/*.poWinMerge.chmShellExtensionU.dll and ShellExtensionX64.dll/Docs/Users/*/Filters/*These files are produced by compiling WinMerge, documentation etc, but that's not subject of this document.
In addition you will need Microsoft C- and MFC-runtime merge modules. Those files are not distributes with WinMerge. By default we use VS2008 merge modules from the %CommonProgramFiles%\Merge Modules folder:
Microsoft_VC90_CRT_x86.msmMicrosoft_VC90_MFC_x86.msmMicrosoft_VC90_CRT_x86_x64.msmMicrosoft_VC90_MFC_x86_x64.msmCopy or move the files into the following layout:
Manual/htmlhelp
WinMerge.chmRelease/
ShellExtensionU.dllWinMergeU.exeShellExtensionX64/
ShellExtensionX64.dllDocs/
Users
Docs/Users folder to hereFilters/
FileFilter.tmpl*.fltInstaller/
WIX/
Installer/WIX folder to hereTranslations/
Docs
*.*WinMerge
*.poWinMerge.wxs (in WIX folder) is script used to create WinMerge MSI installer. Other tools and IDEs can be used also. For example WixEdit or SharpDevelop.
Open the Visual Studio command prompt and CD to Installer/WIX-folder. Run command:
msbuild.exe WinMerge.wixproj
There are two commonly used parameters:
/p:Platform=x86 or /p:Platform=x64/p:ProductVersion=x.x.x. If the version number is not given it is read from Config.wxi. But then filename does not contain version number.For example:
msbuild.exe WinMerge.wixproj /p:Platform=x86,ProductVersion=1.0.2
If the compile succeeds you have WinMerge-[platform]-Setup.msi files in Build\WiX\Release\ folder's subfolders.
Test installer!