2010-08-19 93 views
2

我使用Installshield,并在所有文件传输到目标目标后成功启动我的exe安装文件(例如KLite)。Installshield运行EXE然后等待完成,然后再运行另一个

我的问题是这样的:

我目前能够发射所有的安装exe文件的必要的,但他们都推出在同一时间,它可以是相当恼人的和混乱。我正在使用“自定义操作”来启动每个可执行文件。我正在尝试不同的“In-Script Execution”属性无济于事。我的“返回处理”设置为异步(等待退出代码),但它仍然给我的问题。

我想在每次完成之前执行每一个。

任何人都有这方面的经验?它是可能的...

感谢, -Kyle

+0

异步不等待退出,它一次全部运行。尝试同步。 – 2010-08-19 20:37:16

回答

3

你想不同步异步。顺便说一句,除了最罕见的情况之外,我不建议EXE CA。主要是因为它们的进程非常有限,报告成功和回写Windows Installer日志的能力非常有限,并且DOS DOS CMD窗口非常不专业。

总是尝试使用C++/C#自定义操作。

另外,请务必阅读下面的内容:EXE自定义操作

集成跨栏 http://blogs.msdn.com/b/windows_installer_team/archive/2007/10/20/integration-hurdles-for-exe-custom-actions.aspx

如果你必须使用一个EXE一定要使用像维克斯QuiteCA(你可以用这个了转换成WiX合并模块并与InstallShield Basic MSI项目一起使用),以帮助屏蔽这些问题并改进日志记录。

+0

同步呼叫工作。 我正在使用Installshield自定义操作来启动可执行文件。你知道另一种方法来执行此操作以避免出现上述问题吗? 我找不到任何对WiX QuiteCA解决方案的引用。 我目前复制所有文件,然后运行它们的exe文件,以便用户可以安装它们。 我想绕过你提到的问题。举一个例子,我运行这个exe文件,安装完成后,用户必须在DOS提示符下点击“enter”才能继续。这是我无法接受的,我想看看绕过这个... – Kyle 2010-08-21 18:37:19

+0

http://wix.sourceforge.net/manual-wix3/qtexec.htm 理想的解决方案是摆脱调用EXE。他们在做什么?很可能你可以让InstallShield/MSI做他们正在做的事情,并且你正在创建一些被称为“Trojan MSI”的东西(这看起来像是安装,但实际上并不是)。 – 2010-08-21 19:18:53

+0

我使用的是“静音安装”,而不是以前看起来好多了。我目前正在使用自定义操作以静默模式调用exe。 – Kyle 2010-08-23 20:38:28

相关问题