Archive: Why Doesn't This Script Work for me


Why Doesn't This Script Work for me
This script is doing two things first of all it is searching for a specific registry key to get the install path and also making sure that the program this addon is inteded for is installed, this part of the script works without problems.

The Second part is using the Processes plugin to see if this program is running, if the program is found to be running $R0 should return 1 and halt on the message i have created for some reason it does not and I cant figure out why. I'm hoping its a simple error on my part that one of you will beable to find and help me correct.

Function .onInit
ReadRegStr $R1 HKLM "SOFTWARE\Program Manufacturer\Program To Search For\" "InstallPath"

StrCmp $R1 "" ProgNotFound ProgFound

ProgNotFound:
MessageBox MB_OK|MB_ICONEXCLAMATION "The Program this installer needs is not installed on this computer. You must install it to continue with this installation."
Quit

ProgFound:
loop:
Processes::FindProcess "Prog"
StrCmp $R0 1 0 done

MessageBox MB_OK|MB_ICONEXCLAMATION "The Program this installer needs is running on this computer. You must close it to continue with this installation."
Quit

done:
FunctionEnd


It seems that it doesn't find the process, did you try to debug your script with a message box to see what $R0 contains in that stage?
What is the loop label about?

You may want to give a try to FCT plugin as well,

http://nsis.sourceforge.net/FCT_plug-in