分享

SAFEARRAY如何封装成Variant?

 quasiceo 2013-12-05

SAFEARRAY如何封装成Variant?

所属分类:Delphi VCL组件开发及应用
-----------------------------------------

var
A: Variant;
   psa: PSAFEARRAY;
   rgsabound: array[0..1] of TSafeArrayBound;
   RGB: array[0..255] of array[0..2] of byte;
begin
     rgsabound[0].cElements :=256;
     rgsabound[0].lLbound :=0;
     rgsabound[1].cElements :=3;
     rgsabound[1].lLbound :=1;
     psa := SafeArrayCreate(VT_ARRAY,2,rgsabound);
     psa.cDims :=2;
     psa.fFeatures :=FADF_AUTO;
     psa.cbElements := SizeOf(Byte);
     psa.pvData :=@RGB;

     A.vt :=VT_ARRAY+varByte;
     A.pArray := psa;  <----这句编译时出错 [Error] untMain.pas(1592): Type not allowed in Variant Dispatch call

end;
请问怎样才能把上面的psa转换为变体A

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多