Z
zhhg975
Unregistered / Unconfirmed
GUEST, unregistred user!
调用的dll接口函数为‘function ReadData(pSN,pData Char;iNo,iPort:Integer):integer;stdcall;’调用此接口的函数定义如下:function GetBlockData(var BlockData : string;BlockNo :integer):string;var iPort, iRtn :integer; cSN, bData char;begin iPort := 1; GetMem(cSN,16); GetMem(bData,32); iRtn := ReadData(cSN,bData,BlockNo,iPort); if iRtn=99 then //表示返回成功 begin BlockData := bData; end else begin ShowMessage('读'+intTostr(BlockNo)+'出错!'); end; Finalize(bData); FreeMem(cSN); FreeMem(bData);end;第一次掉用上面的函数,一般没有问题,当多次调用上面的函数,在FreeMem(bData)时就会出现‘invalid pointer operation’的错误,请各位高手指教,如问题描述的不清楚请说明