views:

21

answers:

2

Using NSIS, how can I read a (optional) command-line parameter provided to an uninstaller?

I don't need to read it by name-- just reading the first parameter given could be enough.

+1  A: 

Use the GetParameters and GetOptions helper functions in FileFunc.nsh (Included with NSIS)

Anders
A: 

For anyone else's benefit, here's the actual code I used.

Program executed with parameter:

C:\path\to\program.exe -SELECT-DATA=FALSE

Then inside the uninstaller's un.onInit method:

Function un.onInit
  ${GetParameters} $R0
  ${GetOptions} $R0 "-SELECT-DATA=" $R1
  MessageBox MB_OK "Value read: $R1"
FunctionEnd

Will pop up a message box with the value: FALSE

Cuga