Come si crea un'origine del registro eventi utilizzando WiX
-
09-06-2019 - |
Domanda
Sto creando un programma di installazione per un sito Web che utilizza un'origine del registro eventi personalizzata.Vorrei che il nostro programma di installazione basato su WiX creasse l'origine del registro eventi durante l'installazione.
Qualcuno conosce il modo migliore per farlo utilizzando il framework WiX.
Soluzione
Wix offre un supporto immediato per la creazione di origini del registro eventi.
Supponendo che tu utilizzi Wix 3, devi prima aggiungere un riferimento a WixUtilExtension al tuo progetto Votive o alla riga di comando.Puoi quindi aggiungere un elemento EventSource sotto un componente:
<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>
Se si tratta di un progetto .NET, è possibile utilizzare EventLogMessages.dll nella directory Framework come file di messaggi.
Altri suggerimenti
Giusto per risparmiare tempo: se stai cercando di utilizzare il registro dell'applicazione e i messaggi .NET puoi tagliare e incollare il codice seguente:
<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"
/>
NOTA:il percorso sopra ora è corretto..
Che ne dici delle cose più flessibili integrate:
EventMessageFile="[NETFRAMEWORK20INSTALLROOTDIR]EventLogMessages.dll"
O
EventMessageFile="[NETFRAMEWORK40FULLINSTALLROOTDIR]EventLogMessages.dll"
E
EventMessageFile="[NETFRAMEWORK40FULLINSTALLROOTDIR64]EventLogMessages.dll"