2016-06-27 1 views
2

Je voudrais poser une question très spécifique sur l'écriture dans la visionneuse d'événements en utilisant la classe System.Diagnostics.Tracing.EventSource et .NET 4.6. Par le passé, si vous souhaitiez utiliser les canaux de visionneuse d'événements, vous deviez écrire/générer un manifeste XML et l'enregistrer auprès du système d'exploitation. Est-ce toujours le cas?EventSource dans .NET 4.6 & Event Viewer

Si j'ai du mal à trouver comment obtenir la génération pour générer le manifeste, je crois que c'est possible avec le paquet nuget EventSource, mais je voudrais utiliser la classe in built sous le System.Diagnostics .Tracing espace de noms si possible.

Merci d'avance.

Répondre

5

Jetez un oeil à l'emballage Microsoft EventRegister Tool sur NuGet:

Ce forfait comprend eventRegister.exe, qui permet l'enregistrement et la validation des classes de EventSource définies par l'utilisateur. Il prend en charge à la fois les sources d'événements BCL (classes dérivées de System.Diagnostics.Tracing.EventSource) et les sources d'événements NuGet (classes dérivées de Microsoft.Diagnostics.Tracing.EventSource).

Installer via la console de gestion de paquetages VS:

Install-Package Microsoft.Diagnostics.Tracing.EventRegister 

Ce registre vos classes EventSource, de sorte que vous pouvez écrire à Eventlog:

[EventSource(Name = "Samples-EventSourceDemos-EventLog")] 
public sealed class MinimalEventSource : EventSource 
{ 
    public static MinimalEventSource Log = new MinimalEventSource(); 

    [Event(1, Message="{0} -> {1}", Channel = EventChannel.Admin)] 
    public void Load(long baseAddress, string imageName) 
    { 
     WriteEvent(1, baseAddress, imageName); 
    } 
} 

enter image description here

+0

Merci pour la réponse rapide, juste avoir quelques problèmes pour obtenir ce paquet à travers notre pare-feu, mais je vais essayer de contourner ce problème et l et vous savez comment je m'entends. – PhilH

+0

obtenir le paquet avec ce lien: https://www.nuget.org/api/v2/package/Microsoft.Diagnostics.Tracing.EventRegister/1.1.28 (sur votre smartphone et l'utiliser dans un chemin de NuGet local: http: //www.hanselman.com/blog/HowToAccessNuGetWhenNuGetorgIsDownOrYoureOnAPlane.aspx) – magicandre1981

+0

étiez-vous capable d'utiliser le paquet Nuget? – magicandre1981