Share via


Aktivieren der Protokollierung

Windows Media Geräte-Manager stellt ein Protokollierungsobjekt bereit, mit dem Informationen zur Laufzeit in einer Textdatei gespeichert werden können. Entwickler von Anwendungen und Dienstanbietern können dieses Objekt verwenden, um Nachrichten in einer Protokolldatei zu speichern, während ihre Anwendung oder ihr Dienstanbieter ausgeführt wird. Dieses Objekt ist besonders nützlich beim Behandeln von DRM-geschützten Dateien, da Windows Media Geräte-Manager es Ihnen nicht ermöglicht, einen Debugger an einen Prozess anzufügen, der DRM-geschützte Dateien verarbeitet.

Die Protokollierung ist ein COM-Objekt mit der Klassen-ID CLSID_WMDMLogger, die eine Schnittstelle verfügbar macht, IWMDMLogger. Komponenten benötigen kein Zertifikat, um das Protokollierungsobjekt zu verwenden.

Standardmäßig verwaltet Windows Media Geräte-Manager eine Protokolldatei, unabhängig davon, ob eine Anwendung IWMDMLogger verwendet. Diese Protokolldatei ist eine einfache Textdatei, und jeder Eintrag enthält einen Eintrag, dem ein Zeitstempel im Format JJJJJJMMDHHMMSS vorangestellt ist, wobei 24 Stunden Ortszeit verwendet wird. Windows Media Geräte-Manager protokolliert alle API-Aufrufe sowie alle Einträge, die Sie durch Aufrufen von IWMDMLogger-Nachrichten hinzufügen. Alle Protokolldateieinträge werden an die Datei angefügt, bis Reset aufgerufen wird oder die Datei ihre maximale Größe überschreitet. Die Datei wird nach jedem Protokollierungsvorgang automatisch geschlossen. Dieselbe Protokolldatei wird für Anwendungs- und Systemeinträge verwendet.

Die folgenden Schritte zeigen die Verwendung des Protokollierungsobjekts:

  1. Fügen Sie wmdmlog.h in Ihr Projekt ein.
  2. Erstellen Sie ein Protokollierungsobjekt, indem Sie CoCreateInstance(CLSID_WMDMLogger) aufrufen und die IWMDMLogger-Schnittstelle anfordern. Weisen Sie den Schnittstellenzeiger einer globalen Variablen zu.
  3. Überprüfen Sie, ob die Protokollierung aktiviert ist, indem Sie IWMDMLogger::IsEnabled aufrufen. wenn nicht, aktivieren Sie es, indem Sie IWMDMLogger::Enable aufrufen.
  4. Geben Sie den Namen und die Größe der benutzerdefinierten Protokolldatei an. Dazu rufen Sie IWMDMLogger::SetLogFileName und IWMDMLogger::SetSizeParams auf.
  5. Rufen Sie an Den Stellen im Code, an denen Sie einen Eintrag im Protokoll vornehmen möchten, entweder IWMDMLogger::LogDword auf, um Zeichenfolgen zu protokollieren, die Variablen enthalten (diese Methode ähnelt wsprintf in der Weise, wie Sie eine Zeichenfolge mit einem Variablenwert formatieren können), oder rufen Sie IWMDMLogger::LogString auf, um konstanten Zeichenfolgen zu protokollieren.

Beispielcode finden Sie auf den Referenzseiten für die Methoden von IWMDMLogger.

Allgemeine Aufgaben für Anwendungen und Dienstanbieter