2

カスタムProgressDlgダイアログでプログレスバーの値を更新しようとしていますが、ProgressDlgが表示されたときにカスタムアクションが呼び出されません

Product.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>

私の質問:

  1. カスタムマネージドアクションを呼び出す方法は?
  2. show standard ProgressDlgを使用できますが、進行状況を2つのステップ(カスタムファイルと標準ファイルのコピー)に分割できますか?
4

1 に答える 1

0

面白そうに見えますが、問題はファイルのセクションにありました。

  1. ファイルのないパッケージまでアクションは呼び出されません

  2. 標準のProgressDlgを使用して、進行状況をいくつかの手順で分割できます。カスタムアクションでは、プログレスバーの値をリセットし、新しい値で更新できます

于 2012-12-28T17:42:59.657 に答える