如何在关闭对话框的 Wix 安装程序中停止自定义操作中的进度条
Posted
技术标签:
【中文标题】如何在关闭对话框的 Wix 安装程序中停止自定义操作中的进度条【英文标题】:How Do I Stop Progress Bar in Custom Action in Wix Installer Closing the Dialog Box 【发布时间】:2017-03-02 18:33:34 【问题描述】:我已经用 C++ 编写了进度条代码,并将该 dll 集成到我在 Wix 中的自定义操作代码中,这是我在 WIX 中为继续按钮编写的,它是自定义操作
<Control Id="proceedButton" Type="PushButton" Text="[Proceed]" Height="62" Width="222" X="90" Y="180" Bitmap="yes">
<Publish Event="DoAction" Value="RegistrationInfoCustomAction">1</Publish>
<Publish Event="EndDialog" Value="Return">1</Publish>
</Control>
<Binary Id="CustomActionBinary" SourceFile="$(var.RegistrationInfoCustomAction.TargetDir)$(var.RegistrationInfoCustomAction.TargetName).dll"/>
<CustomAction Id="RegistrationInfoCustomAction" BinaryKey="CustomActionBinary" DllEntry="CAProgress" />
我的 dll 代码在 MSDN 上 - https://msdn.microsoft.com/en-us/library/windows/desktop/aa367525(v=vs.85).aspx
单击“继续”按钮会出现一个带有控制操作进度条的新对话框 -
<Control Id="InfoText" Type="Text" X="50" Y="30" Width="200" Height="17">
<Subscribe Event="ActionData" Attribute="Text" />
<Control Id="ProgressBar" Type="ProgressBar" X="20" Y="115" Width="330" Height="10" ProgressBlocks="yes" Text="Hello">
<Subscribe Event="SetProgress" Attribute="Progress" />
</Control>
两个问题是 -
-
进度条未填充 100%
进度条填满后,对话框自动关闭。尽管我尝试过使用 Modeless="yes" 和 KeepModeless="no" 的所有组合。
请告诉我应该如何解决这些问题。
【问题讨论】:
【参考方案1】:只需将下一个对话框的显示标签放在您保留进度条控件的同一个对话框中。 这肯定会奏效。
【讨论】:
您能否提供更多详细信息?以上是关于如何在关闭对话框的 Wix 安装程序中停止自定义操作中的进度条的主要内容,如果未能解决你的问题,请参考以下文章