我正在尝试更新我的自定义 ProgressDlg 对话框中的进度条值,但是当 ProgressDlg 出现时我的自定义操作未被调用。
产品.wxs
<Product>
<CustomAction Id="ShowTime" BinaryKey="myAction" DllEntry="ShowTime" Execute="deferred" Return="check" />
<InstallUISequence>
<!-- replace standart progress dialog with my custom -->
<Show Dialog="DbProgressDlg" After="ProgressDlg" />
</InstallUISequence>
<InstallExecuteSequence>
<!-- call? when? not clear -->
<Custom Action="ShowTime" After="InstallInitialize"></Custom>
</InstallExecuteSequence>
</Product>
我的自定义对话框DbProgressDlg.wxs
<UI>
<Dialog>
<Control Id="InfoText" Type="Text" X="50" Y="130" Width="250" Height="17">
<Subscribe Event="ActionData" Attribute="Text" />
</Control>
<Control Id="MyProgressBar" Type="ProgressBar" X="50" Y="50" Width="250" Height="20">
<Subscribe Event="SetProgress" Attribute="Progress" />
</Control>
</Dialog>
<ProgressText Action="ShowTime" Template="Doing Stuff: [1]" />
</UI>
我的问题:
- 如何调用我的自定义托管操作?
- 可以使用 show standard ProgressDlg 但将进度分为两步(我的自定义文件和标准文件副本)?
它看起来很有趣,但问题出在文件的部分。
直到您的包没有文件时才会调用该操作
您可以使用标准 ProgressDlg 并分几步拆分进度。在自定义操作中,我们可以重置进度条值并使用我们的新值更新它
我是一名优秀的程序员,十分优秀!