Comment écrire dans un journal des événements à l'aide de Visual C++

Traductions disponibles Traductions disponibles
Numéro d'article: 815661 - Voir les produits auxquels s'applique cet article
Pour une version de Visual C# .NET de cet article, voir 307024.
Pour une version de Microsoft Visual Basic .NET de cet article, voir 301279.

Cet article se réfère à la bibliothèque de classes Microsoft .NET Framework suivant espaces de noms :
  • système
  • System.Diagnostics
Agrandir tout | Réduire tout

Sommaire

INTRODUCTION

Cet article étape par étape explique comment ajouter vos propres entrées dans le journal des événements du système d'exploitation à l'aide du Microsoft .NET Framework.

Plus d'informations

Configuration requise

La liste suivante décrit le matériel recommandé, logiciels, infrastructure réseau et service packs dont vous avez besoin :
  • Microsoft Windows 2000 Professionnel, Windows 2000 Server, des Windows 2000 Advanced Server ou Windows NT 4.0 Server
  • Microsoft Visual Studio .NET
  • Microsoft Visual Studio 2005

Écrire dans un journal des événements

Journalisation des événements offre un moyen standard et centralisé pour vos applications enregistrer les événements importants logicielles et matérielles. Windows fournit une interface utilisateur standard pour afficher les journaux : l'Observateur d'événements. À l'aide le courants composant de journal des événements au moment de l'exécution de langue, vous pouvez se connecter à journaux d'événements existants facilement sur les ordinateurs locaux et distants et écrire des entrées dans ces journaux. Vous pouvez également lire les entrées de journaux existants et créer vos propres journaux des événements personnalisés. Dans sa forme la plus simple, écrire dans un journal des événements implique plusieurs étapes pour créer un exemple d'application.

Pour ce faire, procédez comme suit :
  1. Démarrez Visual Studio .NET ou Visual Studio 2005.
  2. Créez un nouveau projet Visual C++ géré les applications de C++.

    note Dans Visual C++ .NET 2003, procédez comme suit :
    1. Sous types de projets , cliquez sur projets Visual C++ .
    2. Sous modèles , cliquez sur application console (.NET) .
    Dans Visual C++ 2005, procédez comme suit :
    1. Sous types de projets , cliquez sur Visual C++ .
    2. Sous modèles , cliquez sur application console CLR .
  3. Ajouter une référence à system.dll en ajoutant la ligne suivante au code :
    #using <system.dll>
  4. Utiliser l'utilisation directive sur les espaces de noms System et System::Diagnostics afin que vous n'ayez pas de qualifier les déclarations de ces espaces de noms plus loin dans votre code. Vous devez utiliser les instructions suivantes avant toute autre déclaration :
    using namespace System;
    using namespace System::Diagnostics;
  5. Pour écrire dans un journal des événements, vous devez avoir plusieurs éléments d'information : votre message, le nom du journal vous auquel écriture (il est créé si il n'existe pas déjà) et une chaîne qui représente la source de l'événement. Vous pouvez enregistrer une source particulière avec uniquement un seul journal des événements ; si vous souhaitez écrire des messages dans plus d'un journal, vous devez définir plusieurs sources.
    String *sSource;
    	String *sLog;
    	String *sEvent;
    
    	sSource = new String("dotNET Sample App1");
    	sLog = new String("Application1");
    	sEvent = new String("Sample Event1");
    
  6. Utiliser deux méthodes statiques de la classe journal des événements pour vérifier si votre source existe et si la source n'existe pas, pour créer cette source qui est associé à un journal d'événements particulier. Si le nom de journal que vous spécifiez n'existe pas, le nom est créé automatiquement lorsque vous écrivez votre première entrée dans le journal. Par défaut, si vous ne fournissez pas un nom journal à la méthode CreateEventSource , le fichier journal est nommé application Log.
    if(!EventLog::SourceExists(sSource)) EventLog::CreateEventSource(sSource,sLog);
    
  7. Pour écrire un message dans un journal des événements, vous pouvez utiliser la méthode EventLog.WriteEntry statique. Cette méthode a plusieurs différentes versions de surchargées. L'exemple de code suivant illustre la méthode la plus simple (cela prend une chaîne source et votre message) et l'un des méthodes plus complexes (qui prend en charge spécifiant la l'ID d'événement et le type d'événement):
    EventLog::WriteEntry(sSource,sEvent);
    	EventLog::WriteEntry(sSource, sEvent, EventLogEntryType::Warning, 235);
  8. Enregistrez votre application. Exécuter votre application et vérifiez le journal Applications dans l'Observateur d'événements pour voir vos nouveaux événements.

Terminer la liste de code dans Visual C++. NET

#include <tchar.h>
#using <system.dll>
#using <mscorlib.dll>

using namespace System;
using namespace System::Diagnostics;

int _tmain()
{
	String *sSource;
	String *sLog;
	String *sEvent;

	sSource = new String("dotNET Sample App1");
	sLog = new String("Application1");
	sEvent = new String("Sample Event1");

 if(!EventLog::SourceExists(sSource))
   EventLog::CreateEventSource(sSource,sLog);

	EventLog::WriteEntry(sSource,sEvent);
	EventLog::WriteEntry(sSource, sEvent,
		EventLogEntryType::Warning, 234);
	return 0;
}

Terminer la liste de code dans Visual C++ 2005

#include <tchar.h>
#include <stdafx.h>
#using <system.dll>
#using <mscorlib.dll>

using namespace System;
using namespace System::Diagnostics;

int main()
{
	String ^sSource;
	String ^sLog;
	String ^sEvent;

	sSource = gcnew String("dotNET Sample App1");
	sLog = gcnew String("Application1");
	sEvent = gcnew String("Sample Event1");

 if(!EventLog::SourceExists(sSource))
   EventLog::CreateEventSource(sSource,sLog);

	EventLog::WriteEntry(sSource,sEvent);
	EventLog::WriteEntry(sSource, sEvent,
		EventLogEntryType::Warning, 234);
	return 0;
}

Propriétés

Numéro d'article: 815661 - Dernière mise à jour: mercredi 11 janvier 2006 - Version: 3.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Visual C++ 2005 Express Edition
  • Microsoft Visual C++ .NET 2003 Initiation
  • Microsoft Visual C++ .NET 2002 Initiation
Mots-clés : 
kbmt kbdebug kbhowtomaster kbeventlog kbhowto KB815661 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 815661
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com