首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AutoRun方法

AutoRun方法
EN

Stack Overflow用户
提问于 2009-08-10 07:55:28
回答 2查看 541关注 0票数 0

我正在使用NSIS制作一个安装程序。

1.我只需在第一步中执行Mysql安装程序

2.在成功执行step1之后(即在系统中安装mysql ),我需要执行我的数据库脚本。

3.现在我需要运行我的myproj.exe

这里的问题是安装程序直接并行运行所有步骤。但我必须一步一步地运行它们,并且只有在成功执行前面的步骤之后才能运行它们。

谢谢,斯里尼瓦斯。

EN

回答 2

Stack Overflow用户

发布于 2009-08-10 15:08:05

我真的不确定你的安装程序是如何并行运行的。NSIS按顺序执行命令。除非您使用我从未见过的命令来使NSIS并行运行,否则它不会并行运行任何东西。你能发布一些你的安装程序的源代码,让我看看你是如何完成的吗?

您可以使用nsExec::ExecToStack命令启动MySql安装程序,并从安装程序中获得如下返回代码:

代码语言:javascript
复制
!include LogicLib.nsh    
StrCpy $myReturnCode "0"
nsExec::ExecToStack "$TEMP\MySqlSetup.exe"
Pop $myReturnCode
${If} "$myReturnCode" == ""
${OrIf} "$myReturnCode" == "0"
    // Presumably it worked, continue with installation
${Else}
    // Error, don't continue with installation
${EndIf}

请注意,nsExec::ExecToStack将等待可执行文件返回,然后再运行下一个NSIS命令。

票数 0
EN

Stack Overflow用户

发布于 2010-11-10 00:40:19

我不太了解NSIS,但是我们有一个安装脚本,可以用ExecWait调用可执行文件

代码语言:javascript
复制
ExecWait "msiexec /passive /liare+ ${SETUP_LOG_FILE} -i $TEMP\MyMsi.msi" $R0

也许这就是你应该使用的。这是一个Quick Guide to NSIS

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1253603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档