执行一个自定义操作时更新进度文本?

use*_*468 7 c# wix

我想在执行一个自定义操作时更新进度文本.我做了以下事情:

  1. 声明我的自定义操作要延迟
  2. 使用下面的代码重置进度条

    private static void ResetProgress(Session session)
    {
        Record record = new Record(4);
        record[1] = "0";
        record[2] = "1000";
        record[3] = "0";
        record[4] = "0";
        session.Message(InstallMessage.Progress, record);
    }
    
    Run Code Online (Sandbox Code Playgroud)
  3. 使用下面的代码来移动进度条:

    private static void NumberOfTicksPerActionData(Session session, int ticks)
    {
        Record record = new Record(3);
        record[1] = "1";
        record[2] = ticks.ToString();
        record[3] = "1";
        session.Message(InstallMessage.Progress, record);
    }
    
    Run Code Online (Sandbox Code Playgroud)
  4. 使用下面的代码来更新进度文本:

    private static void DisplayActionData(Session session, string message)
    {
        Record record = new Record(1);
        record[1] = message;
        session.Message(InstallMessage.ActionData, record);
    }
    
    Run Code Online (Sandbox Code Playgroud)

但是,我无法更新进度文本并移动进度条.

任何人都可以帮助我吗?如果此自定义操作需要处理顺序操作,那么在执行此自定义操作时应如何更新进度条上的状态.

我知道我可以用

<ProgressText Action="UnzipDataBase">Now installing database files, this may take a few minutes!</ProgressText>
Run Code Online (Sandbox Code Playgroud)

设置进度文本以告知此自定义操作正在执行的操作.但是如何在执行此自定义操作时更新状态?

Ili*_*irB 1

您是否将 ProgressText 放入 UI 元素中?例如

<UI>
   <ProgressText Action="UnzipDataBase">Now installing database files, this may take a few minutes!</ProgressText>
</UI>
Run Code Online (Sandbox Code Playgroud)