0
因此基本上我试图在自定义操作期间向刻录用户界面显示自定义消息。 (在从DISM在后台运行,这种情况下,进度显示这是我试过的代码:如何在刻录托管引导程序应用程序中显示WiX自定义操作的信息
public static class CAExtensions
{
public static void SendMessage(this Session session, string message)
{
var record = new Record();
record.SetString(0, message);
session.Message(InstallMessage.Info, record);
}
}
这在我的自定义操作我这样做:
session.SendMessage("Message goes here");
我订阅ExecuteMsiMessage事件:
model.BootstrapperApplication.ExecuteMsiMessage += HandleMessage;
private void HandleMessage(object sender, ExecuteMsiMessageEventArgs e)
{
Installer.Dispatcher.Invoke((Action) (() =>
{
var rawMessage = string.Empty;
var app = model.GetAppData(e.PackageId);
if (app != null)
{
rawMessage = app.Item1.DisplayName + ": ";
}
rawMessage += e.Message;
InstallMessage = rawMessage;
}));
}
InstallMessage被绑定到用户界面的标签。这说明所有标准的消息,但不是那些我在自定义操作发送。
任何想法我做错了什么?