Función TdhGetProperty (tdh.h)
Recupera un valor de propiedad de los datos del evento.
Sintaxis
TDHSTATUS TdhGetProperty(
[in] PEVENT_RECORD pEvent,
[in] ULONG TdhContextCount,
[in] PTDH_CONTEXT pTdhContext,
[in] ULONG PropertyDataCount,
[in] PPROPERTY_DATA_DESCRIPTOR pPropertyData,
[in] ULONG BufferSize,
[out] PBYTE pBuffer
);
Parámetros
[in] pEvent
El registro de eventos pasado a la devolución de llamada eventRecordCallback . Para más información, consulte la estructura EVENT_RECORD .
[in] TdhContextCount
Número de elementos de pTdhContext.
[in] pTdhContext
Matriz de valores de contexto solo para eventos DE WPP o ETW clásico; de lo contrario, NULL. Para más información, consulte la estructura TDH_CONTEXT . La matriz no debe contener tipos de contexto duplicados.
[in] PropertyDataCount
Número de estructuras de descriptor de datos en pPropertyData.
[in] pPropertyData
Matriz de estructuras de PROPERTY_DATA_DESCRIPTOR que define la propiedad que se va a recuperar.
Si llamó a la función TdhGetPropertySize para recuperar el tamaño de búfer necesario para la propiedad, puede usar los mismos descriptores de datos.
Si va a recuperar una propiedad que no es miembro de una estructura, puede especificar un único descriptor de datos. Si va a recuperar una propiedad que es miembro de una estructura, especifique una matriz de dos descriptores de datos (las estructuras no pueden contener ni hacer referencia a otras estructuras).
[in] BufferSize
Tamaño del búfer de pBuffer , en bytes. Puede obtener este valor del parámetro pPropertySize al llamar a la función TdhGetPropertySize .
[out] pBuffer
Búfer asignado por el usuario que recibe los datos de propiedad.
Valor devuelto
Devuelve ERROR_SUCCESS si se ejecuta correctamente. De lo contrario, esta función devuelve uno de los siguientes códigos de retorno además de otros.
Código devuelto | Descripción |
---|---|
|
No se encontró el esquema del evento o no se encontró la propiedad especificada. |
|
El búfer pBuffer es demasiado pequeño. Para obtener el tamaño de búfer necesario, llame a TdhGetPropertySize. |
|
Uno o varios de los parámetros no son válidos. |
|
El atributo resourceFileName del manifiesto contiene la ubicación del binario del proveedor. Al registrar el manifiesto, la ubicación se escribe en el Registro. TDH no pudo encontrar el binario en función de la ubicación registrada. |
|
El servicio WMI no está disponible. |
Comentarios
Si el evento es un evento DE WPP o ETW clásico, puede especificar información de contexto que se usa para ayudar a analizar la información del evento. El evento es un evento WPP si la marca de EVENT_HEADER_FLAG_TRACE_MESSAGE está establecida en el miembro Flags de EVENT_HEADER (consulte el miembro EventHeader de EVENT_RECORD). El evento es un evento ETW heredado si se establece la marca EVENT_HEADER_FLAG_CLASSIC_HEADER.
Para obtener una lista de propiedades para eventos de WPP y sus tipos de datos, vea PROPERTY_DATA_DESCRIPTOR.
Ejemplos
Para ver un ejemplo que muestra cómo llamar a esta función para recuperar el valor de una propiedad de nivel superior o el miembro de una estructura, consulte Uso de TdhGetProperty para consumir datos de eventos.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | tdh.h |
Library | Tdh.lib |
Archivo DLL | Tdh.dll |