Partager via


Activation de la journalisation

Windows Media Gestionnaire de périphériques fournit un objet de journalisation qui peut enregistrer des informations dans un fichier texte au moment de l’exécution. Les développeurs d’applications et de fournisseurs de services peuvent utiliser cet objet pour stocker des messages dans un fichier journal pendant l’exécution de leur application ou fournisseur de services. Cet objet est particulièrement utile lors de la gestion des fichiers protégés par DRM, car Windows Media Gestionnaire de périphériques ne vous permet pas d’attacher un débogueur à un processus qui gère les fichiers protégés par DRM.

L’enregistreur d’événements est un objet COM avec l’ID de classe CLSID_WMDMLogger qui expose une interface, IWMDMLogger. Les composants n’ont pas besoin d’un certificat pour utiliser l’objet de journalisation.

Par défaut, Windows Media Gestionnaire de périphériques gère un fichier journal, qu’une application utilise ou non IWMDMLogger. Ce fichier journal est un fichier texte simple, et chaque entrée comprend une entrée précédée d’un horodatage au format AAAAMMDDHHMMSS, utilisant une heure locale de 24 heures. Windows Media Gestionnaire de périphériques journalise tous les appels d’API, ainsi que toutes les entrées que vous ajoutez en appelant des messages IWMDMLogger. Toutes les entrées de fichier journal sont ajoutées au fichier jusqu’à ce que Réinitialiser soit appelé, ou que le fichier dépasse sa taille maximale. Le fichier est fermé automatiquement après chaque opération de journalisation. Le même fichier journal est utilisé pour les entrées d’application et les entrées système.

Les étapes suivantes montrent comment utiliser l’objet journalisation :

  1. Incluez wmdmlog.h dans votre projet.
  2. Créez un objet de journalisation en appelant CoCreateInstance(CLSID_WMDMLogger) et en demandant l’interface IWMDMLogger . Affectez le pointeur d’interface à une variable globale.
  3. Vérifiez que la journalisation est activée en appelant IWMDMLogger::IsEnabled; si ce n’est pas le cas, activez-le en appelant IWMDMLogger::Enable.
  4. Spécifiez un nom et une taille de fichier journal personnalisés. Pour ce faire, appelez IWMDMLogger::SetLogFileName et IWMDMLogger::SetSizeParams.
  5. Aux points de votre code où vous souhaitez créer une entrée dans le journal, appelez IWMDMLogger::LogDword pour les chaînes de journal contenant des variables (cette méthode est similaire à wsprintf dans la façon dont elle vous permet de mettre en forme une chaîne contenant une valeur de variable) ou appelez IWMDMLogger::LogString pour journaliser les chaînes constantes.

Pour obtenir un exemple de code, consultez les pages de référence pour les méthodes d’IWMDMLogger.

Tâches communes aux applications et aux fournisseurs de services