当用户点击确定时,在msi中保持对同一对话框的控制

时间:2011-11-17 06:49:07

标签: windows-installer custom-action

我正在创建一个DLL自定义操作,它显示一个消息框,从属性表中获取值如下所示:

MessageBox(NULL, "This is a message box", szBuffer1, MB_OK);

我已将此自定义操作附加到“下一步”按钮。当在该对话框上单击Next时,将弹出一个消息框。当用户单击消息框上的Ok按钮时,控件应返回到同一对话框,并且不应显示下一个对话框。我该怎么做到这一点?

1 个答案:

答案 0 :(得分:3)

我建议你使用" SpawnDialog"将控件返回到同一对话框的WIX: 这是一个例子: 1.创建消息对话框:

  <Dialog Id="MessageDlg" Width="260" Height="120" Title="[ProductName]">
    <Control Id="OK" Type="PushButton" X="102" Y="90" Width="56" Height="17" Default="yes" Cancel="yes" Text="OK">
      <Publish Event="EndDialog" Value="Return">1</Publish>
    </Control>
    <Control Id="Text" Type="Text" X="48" Y="22" Width="194" Height="60" Text="[YOURMESSAGE]" />
    <Control Id="Icon" Type="Icon" X="15" Y="15" Width="24" Height="24" ToolTip="Information icon" FixedSize="yes" IconSize="32" Text="WixUI_Ico_Info" />
  </Dialog>

2。设置属性&#34; YOURMESSAGE&#34;在自定义操作中。 3.单击下一步按钮调用此对话框。

<Publish Event="SpawnDialog" Value="MessageDlg">1</Publish>