Archive: ExecWait '$UninstString _?=$INSTDIR'


ExecWait '$UninstString _?=$INSTDIR'
Hi all,

I want to run my uninstaller without making a copy into the temp dir (as I need it's return value). So I would normally do:


ExecWait '$UninstString _?=$INSTDIR'


but my uninstaller needs also another param so if you write:

ExecWait '$UninstString ${NO_REBOOT} _?=$INSTDIR'


it's fine, but if you use


ExecWait '$UninstString _?=$INSTDIR ${NO_REBOOT}'


it will ruin the cmd line params.

Is this a bug or a well known issue?

Thx,
Viv

This is by design, and is known.

-Stu


Yep. From the help files:

...It must be the last parameter used in the command line and must not contain any quotes, even if the path contains spaces.

Comperio, I wasn't able to find the info in the help. What you quoted seems to be from:
3.2 Installer Usage -> 3.2.1 Common Options -> "/D sets the default installation directory ($INSTDIR), overriding InstallDir and InstallDirRegKey. It must be the last parameter used in the command line and must not contain any quotes, even if the path contains spaces."
which I don't think is related to my question.

I actually couldn't find in the help any reference to the "_?=$INSTDIR" param for ExecWait.

Viv


From kichik himself.
http://forums.winamp.com/showthread....+uninstall.exe

There should be a note in the readme if there isn't already.

-Stu


Comperio, I wasn't able to find the info in the help.
It's in help under the section titled 3.2.2 Uninstaller Specific Options
Make sure you are looking at NSIS help from a recent version. Older version of help may not have had the same text.

Yes, thx Comperio, I finally found it in the help. Problem is that I tried to search both: the forum and the help for "_?=" but in both cases I got "no matches".