estructura EVT_VARIANT (winevt.h)
Contiene datos de eventos o valores de propiedad.
Sintaxis
typedef struct _EVT_VARIANT {
union {
BOOL BooleanVal;
INT8 SByteVal;
INT16 Int16Val;
INT32 Int32Val;
INT64 Int64Val;
UINT8 ByteVal;
UINT16 UInt16Val;
UINT32 UInt32Val;
UINT64 UInt64Val;
float SingleVal;
double DoubleVal;
ULONGLONG FileTimeVal;
SYSTEMTIME *SysTimeVal;
GUID *GuidVal;
LPCWSTR StringVal;
LPCSTR AnsiStringVal;
PBYTE BinaryVal;
PSID SidVal;
size_t SizeTVal;
BOOL *BooleanArr;
INT8 *SByteArr;
INT16 *Int16Arr;
INT32 *Int32Arr;
INT64 *Int64Arr;
UINT8 *ByteArr;
UINT16 *UInt16Arr;
UINT32 *UInt32Arr;
UINT64 *UInt64Arr;
float *SingleArr;
double *DoubleArr;
FILETIME *FileTimeArr;
SYSTEMTIME *SysTimeArr;
GUID *GuidArr;
LPWSTR *StringArr;
LPSTR *AnsiStringArr;
PSID *SidArr;
size_t *SizeTArr;
EVT_HANDLE EvtHandleVal;
LPCWSTR XmlVal;
LPCWSTR *XmlValArr;
};
DWORD Count;
DWORD Type;
} EVT_VARIANT, *PEVT_VARIANT;
Miembros
BooleanVal
Valor booleano.
SByteVal
Valor entero de 8 bits con signo.
Int16Val
Valor entero de 16 bits con signo.
Int32Val
Un valor entero de 32 bits con signo.
Int64Val
Valor entero de 64 bits con signo.
ByteVal
Valor entero de 8 bits sin signo.
UInt16Val
Valor entero de 16 bits sin signo.
UInt32Val
Valor entero de 32 bits sin signo.
UInt64Val
Valor entero de 64 bits sin signo.
SingleVal
Valor real de precisión única.
DoubleVal
Valor real de precisión doble.
FileTimeVal
Valor FILETIME de 8 bytes.
SysTimeVal
Valor SYSTEMTIME.
GuidVal
Un valor GUID de 16 bytes.
StringVal
Cadena Unicode terminada en null.
AnsiStringVal
Valor de cadena ANSI terminado en null.
BinaryVal
Puntero a un valor binario hexadecimal.
SidVal
Valor ASCII de 4 bytes. Estructura de identificador de seguridad (SID) que identifica de forma única un usuario o grupo.
SizeTVal
Una dirección de puntero. El tamaño de la dirección (4 bytes o 8 bytes) depende de si el proveedor se ejecutó en un sistema operativo de 32 o 64 bits.
BooleanArr
Puntero a una matriz de valores booleanos.
SByteArr
Puntero a una matriz de valores de 8 bits con signo.
Int16Arr
Puntero a una matriz de valores de 16 bits firmados.
Int32Arr
Puntero a una matriz de valores de 32 bits firmados.
Int64Arr
Puntero a una matriz de valores de 64 bits firmados.
ByteArr
Puntero a una matriz de valores de 8 bits sin signo.
UInt16Arr
Puntero a una matriz de valores de 16 bits sin signo.
UInt32Arr
Puntero a una matriz de valores de 32 bits sin signo.
UInt64Arr
Puntero a una matriz de valores de 64 bits sin signo.
SingleArr
Puntero a una matriz de valores reales de precisión única.
DoubleArr
Puntero a una matriz de valores reales de precisión doble.
FileTimeArr
Puntero a una matriz de valores FILETIME.
SysTimeArr
Puntero a una matriz de valores SYSTEMTIME.
GuidArr
Puntero a una matriz de valores GUID.
StringArr
Puntero a una matriz de cadenas Unicode terminadas en NULL.
AnsiStringArr
Puntero a una matriz de cadenas ANSI terminadas en NULL.
SidArr
Puntero a una matriz de valores ASCII de 4 bytes.
SizeTArr
Puntero a una matriz de valores de size_t.
EvtHandleVal
Valor de EVT_HANDLE.
XmlVal
Valor de cadena XML.
XmlValArr
Puntero a una matriz de valores de cadena XML.
Count
Número de elementos de la matriz de valores. Use Count si el miembro Type tiene establecida la marca EVT_VARIANT_TYPE_ARRAY .
Type
Marca que especifica el tipo de datos de la variante. Para conocer los valores posibles, consulte la enumeración EVT_VARIANT_TYPE .
La variante contiene una matriz de valores, si se establece la marca EVT_VARIANT_TYPE_ARRAY . Los miembros que terminan en "Arr" contienen matrices de valores. Por ejemplo, usaría el miembro StringArr para tener acceso a los datos variantes si el tipo es EvtVarTypeString y se establece la marca EVT_VARIANT_TYPE_ARRAY .
Puede usar la constante EVT_VARIANT_TYPE_MASK para enmascarar el bit de matriz para determinar el tipo de la variante.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
Encabezado | winevt.h |