我的安装程序在安装后进行一些配置。 我在custon操作中创建session.Log()。但是它正在寻找会话清除日志。
我创建对话框OnExit;
<InstallUISequence>
<Show Dialog="MyCompleteDialog" OnExit="success">1</Show>
</InstallUISequence>
<AdminUISequence>
<Show Dialog="MyCompleteDialog" OnExit="success">1</Show>
</AdminUISequence>
在此对话框中:
<CustomAction Id="CopyLog" Execute="immediate" ExeCommand="cmd /c copy [MsiLogFileLocation] "[STARTPATH]\ShortLogs.txt"" Directory="TARGETDIR" Impersonate="no" Return="asyncNoWait" />
<UI>
<Dialog Id="MyCompleteDialog" Width="370" Height="270" Title="!(loc.PrerequisitesDlg_Title)">
<Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="!(loc.WixUINext)" >
<Publish Event="DoAction" Value="CopyLog">1</Publish>
</Control>
</Dialog>
</UI>
在此位置创建日志时,我会看到来自“自定义”操作的日志。
接下来,当我使用一些自定义操作生成一些对话框并最终生成时
<CustomAction Id="CopyLog1" Execute="immediate" ExeCommand="cmd /c copy [MsiLogFileLocation] "[STARTPATH]\FullLogs.txt"" Directory="TARGETDIR" Impersonate="no" Return="asyncNoWait" />
<UI>
<Dialog Id="MyExitDialog" Width="370" Height="270" Title="!(loc.PrerequisitesDlg_Title)">
<Control Id="Finish" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="Finish" >
<Publish Event="DoAction" Value="CopyLog1">1</Publish>
</Control>
</Dialog>
</UI>
它创建不带日志文件和自定义日志的日志文件,甚至包含早期文件中的日志。
即使我不调用第一个事件来创建日志,第二个事件仍然没有自定义操作日志。
如何以自定义操作完成安装后如何保存日志并添加新日志?