定义一个结构体作为out参数,结构体里面放一个BYTE的数组,但是好像不能超过65535字节通过BYTE传递二进制数据

解决方案 »

  1.   

    用VARIANT最好啦
             VARIANT var;
             SAFEARRAYBOUND pSab[1];
             pSab[0].lLbound=0;
    pSab[0].cElements=1000;
    SAFEARRAY *pSa;
    VARIANT var;
    pSa=SafeArrayCreate(VT_UI1,1,pSab);
             byte a[1000]={...};
             for(long i,i<100;i++)
             {
                  hr=SafeArrayPutElement(pSa,&i,&a[i]);
             }
             var.vt=VT_ARRAY|VT_UI1;
             var.parray=pSa;