NSIS MUI_FINISHPAGE_RUN

问题描述 投票:0回答:1

我不明白为什么:

如果我使用

    !define MUI_FINISHPAGE_RUN notepad.exe

它起作用,记事本开始

如果我使用

    !define MUI_FINISHPAGE_RUN winword.exe

什么都没有发生

nsis
1个回答
0
投票
记事本在Windows目录中,并且该目录由Exec搜索。 Winword最有可能在程序文件下的某些子文件夹中(而不是%path%的一部分),因此找不到它。

最好的解决方案是提供要运行的应用程序的完整路径。

通常您会这样做

!define MUI_FINISHPAGE_RUN "$InstDir\MyApp.exe"

您可以尝试

!define MUI_FINISHPAGE_RUN !define MUI_FINISHPAGE_RUN_FUNCTION myrun !insertmacro MUI_PAGE_FINISH Function myrun ExecShell "" "winword.exe" FunctionEnd

如果Word在App Paths密钥中注册自己,它将起作用。或者,如果您知道安装了Word,则可以ExecShell .Doc文件。 
© www.soinside.com 2019 - 2024. All rights reserved.