SAFEARRAY如何封装成Variant?

hbczlp 2007-04-06 05:23:50
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
...全文
228 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
mygodsos 2008-10-09
  • 打赏
  • 举报
回复
消灭0回复,路过帮顶

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧