R L
R L

Reputation: 55

NSIS MUI_FINISHPAGE_RUN

I don't understand why:

If I use

!define MUI_FINISHPAGE_RUN notepad.exe

it works, Notepad starts.

If I use

!define MUI_FINISHPAGE_RUN winword.exe

nothing happens.

Upvotes: 0

Views: 1652

Answers (1)

Anders
Anders

Reputation: 101764

Notepad is in the Windows directory and that directory is searched by Exec. Winword is in some subfolder under program files most likely (and not a part of %path%) and therefore it is not found.

The best solution is to provide the full path to the application you want to run.

Normally you do

!define MUI_FINISHPAGE_RUN "$InstDir\MyApp.exe"

You could try

!define MUI_FINISHPAGE_RUN
!define MUI_FINISHPAGE_RUN_FUNCTION myrun
!insertmacro MUI_PAGE_FINISH

Function myrun
ExecShell "" "winword.exe"
FunctionEnd

This will work if Word registers itself in the App Paths key. Alternatively you could ExecShell a .Doc file if you know Word is installed.

Upvotes: 1

Related Questions