Installer
From WinMerge Development Wiki
Documentation how to compile installer and where to put files etc is availeble in SVN: readme-InnoSetup.html.
Contents |
[edit] Installer Tasks
The installer does a lot more than just copying files into WinMerge program folder:
- adds project file icon and associates it with
.winmergefiles - sets notepad as project file editor
- adds WinMerge as ClearCase, TortoiseCVS or TortoiseSVN compare tool
- enables shell integration
- removes archive support files when uninstalling
[edit] Libraries
WinMerge uses two external libraries:
- expat
- PCRE
We compile and distribute dll:s of these libraries with WinMerge. The installer copies library dll files to WinMerge folder
[edit] Runtime Files
Several runtime files, C-library, MFC-library etc are in folder Installer\Runtimes\. We use Visual Studio 2003.Net versions of those runtime files. They don't come with Windows versions (at least not in XP and earlier) and must be installed for WinMerge to work.
[edit] Logging
Installer can create a log from install process. This can help in solving installation problems.
To create a log, start installer from the command line, and give argument like:
/LOG=C:\WinMerge_install.log
For example with WinMerge 2.8.0 installer:
WinMerge-2.8.0-Setup.exe /LOG=C:\WinMerge_install.log
[edit] Todo
Some ideas to improve installer:
- prompt if user wants to remove WinMerge settings from registry when uninstalling
- download (and install) archive integration
- create MSI installer
- create installer capable running without administrator priviledges (possible? what limitations there would be?)
- allow to only uninstall part of WinMerge - e.g. uninstall just plugins?
[edit] Links
Some Inno Setup related links: Inno Setup Extensions Knowledge Base

