怎么用VARIANT传递long类型数组。 比如一个ActiceX控件有如下方法: SetBuffer(VARIANT & propVal)要求传递的是long 的数组,怎么转换。ColeVariant好象没有这样的构造函数。如果给的代码成功执行,给满分100 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 _variant_t vTemp(8l); //8L,long型//_variant_t vOk;SetBuffer( vTemp );Have a try _variant_t var;LONG Count = 100;SAFEARRAY* pSa = ::SafeArrayCreateVector(VT_I4, 0, Count);if (pSa != NULL){ var.vt = VT_ARRAY | VT_I4; var.parray = pSa; LONG* pvData = NULL; ::SafeArrayAccessData(pSa, (void**)&pvData); for (long i=0; i<Count; i++) pvData[i] = i; ::SafeArrayUnaccessData(pSa);}SetBuffer(var); LeeZi(临渊羡鱼,不如退而结网) 说的对 问个关于多文档打开文件的问题 STL中的一个问题 请教快捷键的问题 Web Browser控件与IE proxy设置同步的问题 大量的Clients访问DBMS,采用哪种架构或访问技术,可以使Clients访问效率最高?? 使用函数MessageBeep PC喇叭不响啊? 请问C#读取内存中的中文后,怎么处理成为UNICODE码? 内存分配和释放的问题? 有人遇到过这种问题吗?你能解决吗? DirectShow创建组件显示未注册组件问题 用pDC->Pie()画一个圆,想把当中擦掉漏出背景.最近想发财. 终于到达两星!!!历时35天。
//_variant_t vOk;SetBuffer( vTemp );Have a try
if (pSa != NULL)
{
var.vt = VT_ARRAY | VT_I4;
var.parray = pSa;
LONG* pvData = NULL;
::SafeArrayAccessData(pSa, (void**)&pvData);
for (long i=0; i<Count; i++)
pvData[i] = i;
::SafeArrayUnaccessData(pSa);
}SetBuffer(var);