Installation 安装软件:安装前启动一个命令,安装后启动另一个命令

Installation 安装软件:安装前启动一个命令,安装后启动另一个命令,installation,nsis,Installation,Nsis,我正在尝试使用NSIS创建一个安装包,我需要在安装之前启动一个命令,在安装之后启动另一个命令 这就是我尝试过但没有成功的方法: Name "MyProgram" OutFile "MyInstall.exe" InstallDir "$PROGRAMFILE\MyProgram" Function .onInit !system vs_redist.x64.exe FunctionEnd Section "My Program" SetOutPath $INSTDIR

我正在尝试使用NSIS创建一个安装包,我需要在安装之前启动一个命令,在安装之后启动另一个命令

这就是我尝试过但没有成功的方法:

Name "MyProgram"
OutFile "MyInstall.exe"
InstallDir "$PROGRAMFILE\MyProgram"

Function .onInit
    !system vs_redist.x64.exe
FunctionEnd

Section "My Program"
    SetOutPath $INSTDIR
    File /r "xamp\*.*"
    File "start.bat"
    File "readme.txt"
SectionEnd

Function .onInstSuccess
    !system xampp/setup_xampp.bat
FunctionEnd
它似乎没有调用这两个函数!系统在编译时执行外部命令。使用ExecWait在运行时执行某些操作:

Function .onInit
InitPluginsDir ; Create $pluginsdir temp folder
File "/oname=$Pluginsdir\myapp.exe" "c:\myfiles\myapp.exe"
ExecWait '"$Pluginsdir\myapp.exe" /param1 "par am 2" /param3' $0
MessageBox mb_ok "Returned $0"
FunctionEnd

它将.exe提取到一个临时位置,然后执行它并等待它完成。如果您不确定,请阅读帮助文件以了解每个命令的说明。我不明白我可以使用什么来实现我的目的。您说您希望在安装之前启动一个命令,而此代码就是这样做的。只需将myapp.exe和启动参数更改为您需要的任何参数。