다음을 통해 공유


EVT_VARIANT 구조체(winevt.h)

이벤트 데이터 또는 속성 값을 포함합니다.

구문

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;

멤버

BooleanVal

부울 값입니다.

SByteVal

부호 있는 8비트 정수 값입니다.

Int16Val

부호 있는 16비트 정수 값입니다.

Int32Val

부호 있는 32비트 정수 값입니다.

Int64Val

부호 있는 64비트 정수 값입니다.

ByteVal

부호 없는 8비트 정수 값입니다.

UInt16Val

부호 없는 16비트 정수 값입니다.

UInt32Val

부호 없는 32비트 정수 값입니다.

UInt64Val

부호 없는 64비트 정수 값입니다.

SingleVal

단일 정밀도 실제 값입니다.

DoubleVal

배정밀도 실제 값입니다.

FileTimeVal

8 바이트 FILETIME 값입니다.

SysTimeVal

SYSTEMTIME 값입니다.

GuidVal

16 바이트 GUID 값입니다.

StringVal

null로 끝나는 유니코드 문자열입니다.

AnsiStringVal

null로 끝나는 ANSI 문자열 값입니다.

BinaryVal

16진수 이진 값에 대한 포인터입니다.

SidVal

4 바이트 ASCII 값입니다. 사용자 또는 그룹을 고유하게 식별하는 SID(보안 식별자) 구조체입니다.

SizeTVal

포인터 주소입니다. 주소 크기(4바이트 또는 8바이트)는 공급자가 32비트 또는 64비트 운영 체제에서 실행되었는지 여부에 따라 달라집니다.

BooleanArr

부울 값 배열에 대한 포인터입니다.

SByteArr

서명된 8비트 값의 배열에 대한 포인터입니다.

Int16Arr

서명된 16비트 값의 배열에 대한 포인터입니다.

Int32Arr

서명된 32비트 값의 배열에 대한 포인터입니다.

Int64Arr

서명된 64비트 값의 배열에 대한 포인터입니다.

ByteArr

부호 없는 8비트 값의 배열에 대한 포인터입니다.

UInt16Arr

부호 없는 16비트 값 배열에 대한 포인터입니다.

UInt32Arr

부호 없는 32비트 값의 배열에 대한 포인터입니다.

UInt64Arr

부호 없는 64비트 값의 배열에 대한 포인터입니다.

SingleArr

단일 정밀도 실제 값의 배열에 대한 포인터입니다.

DoubleArr

배정밀도 실수 값 배열에 대한 포인터입니다.

FileTimeArr

FILETIME 값 배열에 대한 포인터입니다.

SysTimeArr

SYSTEMTIME 값 배열에 대한 포인터입니다.

GuidArr

GUID 값 배열에 대한 포인터입니다.

StringArr

null로 끝나는 유니코드 문자열 배열에 대한 포인터입니다.

AnsiStringArr

null로 끝나는 ANSI 문자열 배열에 대한 포인터입니다.

SidArr

4 바이트 ASCII 값의 배열에 대한 포인터입니다.

SizeTArr

size_t 값 배열에 대한 포인터입니다.

EvtHandleVal

EVT_HANDLE 값입니다.

XmlVal

XML 문자열 값입니다.

XmlValArr

XML 문자열 값 배열에 대한 포인터입니다.

Count

값 배열의 요소 수입니다. Type 멤버에 EVT_VARIANT_TYPE_ARRAY 플래그가 설정된 경우 Count를 사용합니다.

Type

변형의 데이터 형식을 지정하는 플래그입니다. 가능한 값은 EVT_VARIANT_TYPE 열거형을 참조하세요.

EVT_VARIANT_TYPE_ARRAY 플래그가 설정된 경우 변형에 값 배열이 포함됩니다. "Arr"로 끝나는 멤버에는 값 배열이 포함됩니다. 예를 들어 형식이 EvtVarTypeString이고 EVT_VARIANT_TYPE_ARRAY 플래그가 설정된 경우 StringArr 멤버를 사용하여 변형 데이터에 액세스합니다.

EVT_VARIANT_TYPE_MASK 상수를 사용하여 배열 비트를 마스킹하여 변형의 형식을 확인할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
머리글 winevt.h

추가 정보

EVT_SYSTEM_PROPERTY_ID

EVT_VARIANT_TYPE

EVT_VARIANT_TYPE_MASK