对VC不熟悉,下列VC函数如何转换成Delphi.
void CImageBuffer::ByteToVariant(byte *bData, long bSize, VARIANT *pOutAarry)
{
SAFEARRAY* psa;
SAFEARRAYBOUND rgsabound[1];
rgsabound[0].lLbound = 0;
rgsabound[0].cElements =bSize;
psa = SafeArrayCreate(VT_UI1, 1, rgsabound);
for (long i = 0; i <bSize; i++)
SafeArrayPutElement (psa, &i,bData++);
pOutAarry->vt = VT_ARRAY | VT_UI1;
pOutAarry->parray = psa;}
void CImageBuffer::ByteToVariant(byte *bData, long bSize, VARIANT *pOutAarry)
{
SAFEARRAY* psa;
SAFEARRAYBOUND rgsabound[1];
rgsabound[0].lLbound = 0;
rgsabound[0].cElements =bSize;
psa = SafeArrayCreate(VT_UI1, 1, rgsabound);
for (long i = 0; i <bSize; i++)
SafeArrayPutElement (psa, &i,bData++);
pOutAarry->vt = VT_ARRAY | VT_UI1;
pOutAarry->parray = psa;}
解决方案 »
- XP系统里获取SQL服务器列表的时候,有没有遇到过找不到的情况?
- 小弟急求一个代码。可以另开贴给分。急!急!急!
- 关于DELPHI的IDE...DELPHI好象要改名字了
- 如何使用TApplicationEvents,拦截处理这窗体的mouse消息?
- 有谁用过imageEdit控件?ImgEdit.PrintImage函数中的参数快把我搞死了
- 如何在delphi中调用vc写的dll(在线给分)
- 怎样连接Access2000数据库速度最快?
- 关于数据库连接的问题,在线等待
- "not found xxx.dcu"如何处理?新手~_^
- copyfile()怎么用啊?要求参数是PChar,我用字符串怎么不行?如何转成pchar?
- 关于时间
- 怎样让程序跳到前端显示?
var
pOutData: PByte;
i : Integer;
begin
pOutArray := VarArrayCreate([0, bSize - 1], varByte);
pOutData := VarArrayLock(pOutArray);
try
for i := 1 to bSize do
begin
pOutData^ := bData^;
inc(pOutData);
inc(bData);
end;
finally
VarArrayUnlock(pOutArray);
end;
end;