我正在使用 installshield 2011。我有一个合并模块,我希望在安装合并模块后执行某些 exe。此 exe 是合并模块文件的一部分。现在,当我在合并模块中编写自定义操作时,该操作会在文件复制到目标位置之前执行。有没有办法在文件被操作后执行这个自定义操作,以便它可以在该位置找到 exe?或者有没有其他方法可以解决这个问题?
问问题
1320 次
1 回答
2
合并模块不会“安装”,它们会合并到安装程序数据库中,这就是安装的内容。换句话说,在基本 MSI 项目中编写的组件/自定义操作和在 MSM 项目中编写的组件/自定义操作的行为方式相同。
您是在 MSI 还是 MSM 项目中编写自定义操作。区别在于前者使用 InstallExecuteSequence 表,后者使用 ModuleExecuteSequence 表。所有其他规则均适用。您可能希望在 InstallFiles 之后将其安排为 Deferred with No Impersonation ( SYStem Context )。此外,您可能希望在某个条件下使用组件操作状态,以确保仅在安装组件的密钥文件时才执行此操作。
此外,请考虑您是否需要在回滚和卸载场景中执行任何操作。那并确保无论这个 EXE 正在做什么,都不能在 MSI 中本地完成。(SelfReg 模式不如本机声明性事务 MSI 模式。)
于 2011-04-06T22:32:30.523 回答