Habilitar el registro

Windows Media Administrador de dispositivos proporciona un objeto de registro que puede guardar información en un archivo de texto en tiempo de ejecución. Los desarrolladores de aplicaciones y proveedores de servicios pueden usar este objeto para almacenar mensajes en un archivo de registro mientras se ejecuta su aplicación o proveedor de servicios. Este objeto es especialmente útil al controlar archivos protegidos con DRM, ya que Windows Media Administrador de dispositivos no le permitirá adjuntar un depurador a un proceso que controla los archivos protegidos con DRM.

El registrador es un objeto COM con el identificador de clase CLSID_WMDMLogger que expone una interfaz, IWMDMLogger. Los componentes no necesitan un certificado para usar el objeto de registro.

De forma predeterminada, Windows Media Administrador de dispositivos mantiene un archivo de registro, independientemente de si una aplicación usa IWMDMLogger. Este archivo de registro es un archivo de texto simple y cada entrada incluye una entrada precedida por una marca de tiempo con el formato AAAAMMDDHHMMSS, con hora local de 24 horas. Windows Media Administrador de dispositivos registra todas las llamadas API, junto con las entradas que agregue mediante una llamada a mensajes IWMDMLogger. Todas las entradas del archivo de registro se anexan al archivo hasta que se llama a Reset o el archivo supera su tamaño máximo. El archivo se cierra automáticamente después de cada operación de registro. El mismo archivo de registro se usa para las entradas de aplicación y las entradas del sistema.

En los pasos siguientes se muestra cómo usar el objeto de registro:

  1. Incluya wmdmlog.h en el proyecto.
  2. Cree un objeto de registro llamando a CoCreateInstance(CLSID_WMDMLogger) y solicitando la interfaz IWMDMLogger . Asigne el puntero de interfaz a una variable global.
  3. Compruebe que el registro está habilitado llamando a IWMDMLogger::IsEnabled; Si no es así, habilite mediante una llamada a IWMDMLogger::Enable.
  4. Especifique un nombre y un tamaño de archivo de registro personalizados. Esto se hace llamando a IWMDMLogger::SetLogFileName e IWMDMLogger::SetSizeParams.
  5. En los puntos del código donde desea realizar una entrada en el registro, llame a IWMDMLogger::LogDword para registrar cadenas que contengan variables (este método es similar a wsprintf de la forma en que permite dar formato a una cadena que contiene un valor de variable) o llamar a IWMDMLogger::LogString para registrar cadenas constantes.

Para obtener código de ejemplo, consulte las páginas de referencia de los métodos de IWMDMLogger.

Tareas comunes a aplicaciones y proveedores de servicios