【发布时间】:2013-11-21 09:09:10
【问题描述】:
我正在使用 InstallShield 2012 Spring,并且我有一个“主要”基本 MSI 项目。作为我们开发工作的一部分,我们正在使用 DIM 项目来帮助协调多开发人员的工作。在我们的环境中,我们有一个主(基本 MSI)项目,它将引用其他 DIM 项目。 DIM 项目包含(除其他外)对话框。
在 DIM 项目中(此处仅举一个通用示例),我有一个新对话框,其中提供了“下一步”和“后退”按钮。我已将“下一个”和“后退”按钮行为配置为发出一个“NewDialog”事件,其中参数是下一个/上一个面板,因此(分别)显示并且条件为 1(即始终)。
例如在 DIM 我有 MyDIMDialog 的行为: ControlName“Back”事件“NewDialog”参数“APreviousPanelFromMainProject”条件“1” ControlName“Next”事件“NewDialog”参数“ReadyToInstall”条件“1”
基于上面的 MyDIMDialog 是内置“准备安装”之前的最后一个面板。
在主(基本 MSI)项目中,我引用了 DIM 模块并将其与功能相关联。我已经在主项目中配置了对话框,使得“APreviousPanelFromMainProject”的 NewDialog 事件具有引用的 DIM 对话框的参数(生成对话框名称)。
旁注——我正在尝试对现有 UI 对话框中的引用对话框进行排序——而不是像内置的“补丁欢迎”那样作为“顶级”UI 序列对话框。
但是,当我构建并运行 MSI(我们使用的是 MSI 而不是 setup.exe)并进入 APreviousPanelFromMainProject 面板时,单击下一步没有任何反应 - 面板只是闪烁了一下,但没有进入我导入的 DIM 对话框按顺序排列。
我还尝试配置 APreviousPanelFromMainProject,使其“next”的 NewDialog 事件具有“MyDIMDialog”参数(即我不使用生成的引用对话框名称,其格式为 MyDIMDialog.XXXXXXXX_XXXX... )。在这种情况下,当我运行安装程序时,我收到一个错误“错误 2803。对话框视图没有找到对话框 MyDIMDialog 的记录”。
所以问题归结为 --> 如何在基本 MSI 项目中对 DIM 引用对话框进行排序?
我的 google-foo 没有帮助解决这个问题,所以希望这里有人可以提供帮助。
谢谢
【问题讨论】:
标签: windows-installer installshield