Ok I will try to package this up better with a readme, but in the effort of getting this out now, i'm uploading now.
This zip includes a sample inno setup script along with closeapp2.dll
, a 50k utility that can be used with installers to force a running program to exit before installation and after uninstallation, in order to avoid problems with replacing files in use.
The closeapp2.dll can also send windows messages to a target application, useful for things like signaling an app to unload and reload plugins during installation/uninstallation (FARR uses this technique).
You will see 2 versions of the inno setup script; one is traditional and one is for if you do not pack your setup files inside the installer itself (i use this to manually pack my installation files in a self-extracting zip file).
The inno script is a tiny bit hairy because of the tricky case of uninstalling something and needing to signal plugin reloading after normal inno uninstallation processes complete.
The important part of the INNO script is the complete
section, and the one [files] line regarding closeapp2.dll.