C
chrysalis
Unregistered / Unconfirmed
GUEST, unregistred user!
C++的原型如下:功能描述:创建基于串口,USB口或者以太网接口或其他扩展接口之一的连接状态。 函数原型: bool SAAT_Open(void* pHandle) 传入参数: pHandle 为已经初始化的端口句柄 返回值:true:操作成功;false:操作失败。Delphi里调用 procedure TfrmMain.Button3Click(Sender: TObject);type TIntFunc=function (mHandleHandle):Bool;stdcall;var Th:Thandle; Tf:TIntFunc; Tp:TFarProc;begin Th:=LoadLibrary('RFIDAPI.dll'); {装载DLL}if Th>0 then try Tp:=GetProcAddress(Th,PChar('SAAT_Open')); if Tp<>nil then begin Tf:=TIntFunc(Tp); //%%%%%%%%%%%%%调试时程序没有执行这一步 Tf(@TH); {调用函数} end else ShowMessage('SAAT_Open函数没有找到'); finally FreeLibrary(Th); {释放DLL} end else ShowMessage('RFIDAPI.dll没有找到');end;这是典型的动态调用了执行的时候出现问题 'access violation at address 00000000.read of address 00000000'