DISP_FUNCTION的参数是二进制数组时,如何描述?除了VTS_VARIANT
传个二进制数组的地址,如果是在当前程序里调用的话应该是可以的,如果在其它程序里调用,估计不支持
// parameter types: by value VTs
#define VTS_I2 "\x02" // a 'short'
#define VTS_I4 "\x03" // a 'long'
#define VTS_R4 "\x04" // a 'float'
#define VTS_R8 "\x05" // a 'double'
#define VTS_CY "\x06" // a 'CY' or 'CY*'
#define VTS_DATE "\x07" // a 'DATE'
#define VTS_WBSTR "\x08" // an 'LPCOLESTR'
#define VTS_DISPATCH "\x09" // an 'IDispatch*'
#define VTS_SCODE "\x0A" // an 'SCODE'
#define VTS_BOOL "\x0B" // a 'VARIANT_BOOL'
#define VTS_VARIANT "\x0C" // a 'const VARIANT&' or 'VARIANT*'
#define VTS_UNKNOWN "\x0D" // an 'IUnknown*'
#if defined(_UNICODE)
#define VTS_BSTR VTS_WBSTR// an 'LPCOLESTR'
#define VT_BSTRT VT_BSTR
#else
#define VTS_BSTR "\x0E" // an 'LPCSTR'
#define VT_BSTRA 14
#define VT_BSTRT VT_BSTRA
#endif
#define VTS_I1 "\x10" // a 'signed char'
#define VTS_UI1 "\x11" // a 'BYTE'
#define VTS_UI2 "\x12" // a 'WORD'
#define VTS_UI4 "\x13" // a 'DWORD'
#define VTS_I8 "\x14" // a 'LONGLONG'
#define VTS_UI8 "\x15" // a 'ULONGLONG'
// parameter types: by reference VTs
#define VTS_PI2 "\x42" // a 'short*'
#define VTS_PI4 "\x43" // a 'long*'
#define VTS_PR4 "\x44" // a 'float*'
#define VTS_PR8 "\x45" // a 'double*'
#define VTS_PCY "\x46" // a 'CY*'
#define VTS_PDATE "\x47" // a 'DATE*'
#define VTS_PBSTR "\x48" // a 'BSTR*'
#define VTS_PDISPATCH "\x49" // an 'IDispatch**'
#define VTS_PSCODE "\x4A" // an 'SCODE*'
#define VTS_PBOOL "\x4B" // a 'VARIANT_BOOL*'
#define VTS_PVARIANT "\x4C" // a 'VARIANT*'
#define VTS_PUNKNOWN "\x4D" // an 'IUnknown**'
#define VTS_PI1 "\x50" // a 'signed char*'
#define VTS_PUI1 "\x51" // a 'BYTE*'
#define VTS_PUI2 "\x52" // a 'WORD*'
#define VTS_PUI4 "\x53" // a 'DWORD*'
#define VTS_PI8 "\x54" // a 'LONGLONG*'
#define VTS_PUI8 "\x55" // a 'ULONGLONG*'
是否有你想要的东西.
#define VTS_PUI1 "\x51" // a 'BYTE*'