Inno Setup is a wonderful tool for creating Windows installers for programs. We use for our own programs. One common need is closing a running program before installing an updated versions. We now offer some Inno Setup code for accomplishing this. Other developers are welcome to download and use it:

Inno Setup – Code to close a program before reinstalling it