62

我正在为使用自定义事件日志源的网站创建安装程序。我希望我们基于 WiX 的安装程序在安装期间创建该事件日志源。

有谁知道使用 WiX 框架执行此操作的最佳方法。

4

3 回答 3

57

Wix 为创建事件日志源提供了开箱即用的支持。

假设您使用 Wix 3,您首先需要向您的 Votive 项目或命令行添加对 WixUtilExtension 的引用。然后,您可以在组件下添加 EventSource 元素:

<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
    xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">

    <Component ...>
        ...
        <util:EventSource Log="Application" Name="*source name*"
           EventMessageFile="*path to message file*"/>
        ...
    </Component>

如果这是一个 .NET 项目,您可以使用框架目录中的 EventLogMessages.dll 作为消息文件。

于 2008-09-12T11:01:18.797 回答
19

只是为了节省一些时间 - 如果您尝试使用应用程序日志和 .NET 消息,您可以剪切粘贴以下代码:

<Util:EventSource
 xmlns:Util="http://schemas.microsoft.com/wix/UtilExtension"
 Name="ROOT Builder"
 Log="Application"
 EventMessageFile="%SystemRoot%\Microsoft.NET\Framework\v2.0.50727\EventLogMessages.dll"
/>

注意:上面的路径现在是正确的..

于 2009-02-22T00:52:53.470 回答
18

内置更灵活的东西怎么样:

EventMessageFile="[NETFRAMEWORK20INSTALLROOTDIR]EventLogMessages.dll"

或者

EventMessageFile="[NETFRAMEWORK40FULLINSTALLROOTDIR]EventLogMessages.dll"

EventMessageFile="[NETFRAMEWORK40FULLINSTALLROOTDIR64]EventLogMessages.dll"
于 2011-02-17T13:47:10.663 回答