VARIANT 转为 BYTE数组
_variant_t vtValue=com返回值;
{
BYTE *pByte = NULL;
::SafeArrayAccessData(vtValue.parray, (void **)&pByte);
memcpy(pBuff, pByte, sizeof(HEADER_USERADM));
::SafeArrayUnaccessData(vtValue.parray);
}
BYTE数组 转为VARIANT
_variant_t vtValue;SAFEARRAY* psa = NULL;
BYTE* pByte = NULL;
::VariantInit(&vtOperator);
psa = ::SafeArrayCreateVector(VT_UI1, 0, “此处数组大小”);
::SafeArrayAccessData(psa, (void**) &pByte);
memcpy(pByte, BYTE数组地址, 需要复制大小);
::SafeArrayUnaccessData(psa);
vtValue.vt = VT_ARRAY | VT_UI1;
vtValue.parray = psa;