I am a fan of NSIS . I use it for most of my projects, its simple and quick to get up and running. (MSI is such a headache!) One of it’s problems is lack of a native 64 bit installer. This leads to some unexpected problems on 64 bit installations. I build a lot of shell extensions. Typically you want to restart explorer.exe once the installation has completed. There are a number of existing plugins for NSIS that provide this ability. But none of them will work on a 64 bit OS because explorer.exe is a 64 bit process and the installer is a 32 bit process.
So to get around this I have rewritten the commonly used KillProc plugin for NSIS, but internally it uses WMI. WMI uses a lot of COM objects to get the job done, and they do not suffer the same restrictions and re-directions that the standard 32 bit Win32 API calls experience.
Get a copy here, with source <download>
Just put the dll in your NSIS plugins directory and you should be able to use it just like the existing KillProc plugin.
All Code is freely provided, no guarantees or warranties about its quality, use at your own risk.