tags:

views:

185

answers:

2

I am new to NSIS, and I need to know that in the uninstaller, how I can check if the application (which is in C++) is running and close it before uninstalling.

+1  A: 

Depending on the application, you have a couple of choices:

  • If your application has a window with a somewhat unique class name, you could use FindWindow
  • If your application creates a named kernel object (Mutex etc) you can check for it by calling the correct native win32 API with the system plugin
  • Use a 3rd party plugin like FindProcDLL
Anders
+1  A: 

Use the NsProcess plugin. Download it here -> http://nsis.sourceforge.net/NsProcess_plugin . How to use it? As simple as:

${nsProcess::KillProcess} "${APP_EXE}" $R4

where APP_EXE is the name of your application...

The download will also tell you how to use it... :)

Owen