다음을 통해 공유


C28717

경고 C28717: VARIANT 형식이 잘못되었습니다.

VARIANT 구조체vt 필드는 특정 값만 사용할 수 있습니다. 다른 값을 할당하는 것은 오류입니다.

VARIANT 또는 VARIANTARG 구조체의 vt 필드는 VT_EMPTY, VT_NULL, VT_I2, VT_I4, VT_R4, VT_R8등의 값만 사용할 수 VT_BYREF 및/또는 VT_ARRAY수 있습니다. VT_CY, VT_DATE, VT_BSTR, VT_DISPATCH, VT_ERROR, VT_BOOL, VT_VARIANT, VT_DECIMAL, VT_RECORD, VT_UNKNOWN, VT_I1, VT_UI1, VT_UI2, VT_UI4, VT_INT, VT_UINT(VT_EMPTYVT_NULLVT_ARRAY함께 사용할 수 없음).

예제

PREfast는 다음 예제에 대한 경고를 보고합니다.

VARIANT var;
var.vt = VT_SAFEARRAY | VT_INT;

다음 예제에서는 오류를 방지합니다.

VARIANT var;
var.vt = VT_ARRAY | VT_INT;