我必须调用类型库中声明的过程,如下所示:
procedure getDataFromMem(const mem: IMemory; Max: Integer; out data: PSafeArray); safecall;
当我调用它时,我从DLL收到一个处理过的异常。我是否有任何与PSafeArray参数有关的具体内容?我需要以某种方式初始化它吗?
我的实际代码如下:
var
mem: X_TLB.IMemory;
a: PSafeArray;
uprod: X_TLB.IProduct;
begin
uprod:=(m_Prod as IProduct);
mem := uprod.GetFull(1);
uprod.getDataFromMem(mem,256,a);
end;