Installshield CheckBox 控件 ID
Installshield CheckBox Control ID
我在 Project Assistant Installation Interview 选项卡中设置了 launch .exe at installation complete。工作正常。
我需要在打开某个应用程序的情况下启动 .exe。
所以我创建了一个 属性,使用 FindWindow 并将 CheckBox 设置为检查 属性 = true。一切正常。
现在我正在尝试禁用 CheckBox,因为 hwnd 没有打开...但是没有为 CheckBox 设置或创建控件 ID。第二个参数需要它。
This link suggests... MSIGet属性 函数。
该函数 returns 属性 value 不是 ID.
_WinSubEnableControl(hwndDlg,??????, 0);
更新:
我能够使用我创建的 属性 通过 ControlCondition 禁用。还是想知道如何获取控件ID(所以可以使用内置函数_WinSubEnableControl)。
Windows 安装程序对话框中控件的控件 ID 由 Windows 安装程序本身任意分配。唯一受支持的启用或禁用控件的方法是通过您找到的控件条件。
实际上,如果您能找到 window,并且知道复选框上的文本,则可以通过枚举子 windows 轻松找到控件 ID。但由于没有官方支持的方法来查找主window,因此不支持。
我在 Project Assistant Installation Interview 选项卡中设置了 launch .exe at installation complete。工作正常。
我需要在打开某个应用程序的情况下启动 .exe。 所以我创建了一个 属性,使用 FindWindow 并将 CheckBox 设置为检查 属性 = true。一切正常。
现在我正在尝试禁用 CheckBox,因为 hwnd 没有打开...但是没有为 CheckBox 设置或创建控件 ID。第二个参数需要它。
This link suggests... MSIGet属性 函数。 该函数 returns 属性 value 不是 ID.
_WinSubEnableControl(hwndDlg,??????, 0);
更新: 我能够使用我创建的 属性 通过 ControlCondition 禁用。还是想知道如何获取控件ID(所以可以使用内置函数_WinSubEnableControl)。
Windows 安装程序对话框中控件的控件 ID 由 Windows 安装程序本身任意分配。唯一受支持的启用或禁用控件的方法是通过您找到的控件条件。
实际上,如果您能找到 window,并且知道复选框上的文本,则可以通过枚举子 windows 轻松找到控件 ID。但由于没有官方支持的方法来查找主window,因此不支持。