Función TdhGetPropertySize (tdh.h)

Recupera el tamaño de uno o varios valores de propiedad en los datos del evento.

Sintaxis

TDHSTATUS TdhGetPropertySize(
  [in]  PEVENT_RECORD             pEvent,
  [in]  ULONG                     TdhContextCount,
  [in]  PTDH_CONTEXT              pTdhContext,
  [in]  ULONG                     PropertyDataCount,
  [in]  PPROPERTY_DATA_DESCRIPTOR pPropertyData,
  [out] ULONG                     *pPropertySize
);

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 para eventos ETW clásicos o WPP, 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 PROPERTY_DATA_DESCRIPTOR estructuras que definen la propiedad cuyo tamaño desea recuperar.

Puede pasar esta misma matriz a la función TdhGetProperty para recuperar los datos de propiedad.

Si va a recuperar el tamaño de una propiedad que no es miembro de una estructura, puede especificar un único descriptor de datos. Si va a recuperar el tamaño de 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). Para obtener más información sobre cómo especificar este parámetro, vea el código de ejemplo siguiente.

[out] pPropertySize

Tamaño de la propiedad, en bytes. Use este valor para asignar el búfer pasado en el parámetro pBuffer de la función TdhGetProperty .

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
ERROR_NOT_FOUND
No se encontró el esquema del evento o no se encontró el mapa especificado.

Si usó una clase MOF para definir el evento, TDH busca el esquema en el repositorio WMI. Si usó un manifiesto para definir el evento, TDH busca en los recursos del proveedor. Si usa un manifiesto, el atributo resourceFileName del elemento provider define la ubicación donde TDH espera encontrar los recursos.

ERROR_INVALID_PARAMETER
Uno o varios de los parámetros no son válidos.
ERROR_FILE_NOT_FOUND
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.
ERROR_WMI_SERVER_UNAVAILABLE
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.

Ejemplos

Para ver un ejemplo que muestra cómo llamar a esta función, 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

Consulte también

TdhGetProperty