Exec不在NSIS安装程序中工作

Ram*_*esh 3 nsis

我是NSIS的新手我正在尝试执行类似于pre请求的安装时执行可执行文件.我尝试了下面的代码,它将exe复制到安装路径,但它没有执行它.

Section "example" example
  SetOutPath "$INSTDIR"
  File "setup.exe"
  Exec "$INSTDIR\setup.exe"
  BringToFront
SectionEnd 
Run Code Online (Sandbox Code Playgroud)

And*_*ers 8

Seki的答案大多是正确的,我只想补充一点,Exec/ExecWait的正确语法总是 Exec '"c:\path\app.exe" param1 "par am2" param3'

参数当然是可选的,但应始终引用应用程序的路径,这不仅仅是因为在你的情况下,$ INSTDIR可以包含空格,但至少在Win9x上,如果你不引用,它将失败(根据NSIS)手册)

如果空格/缺少引号不是问题,那么您可能还需要考虑其他一些事项:

  • $ OUTDIR是新进程的工作目录(SetOutPath设置此项)
  • 缺少dll等(使用进程监视器检查)