Type TCDWORDProcess=Function(...) Dword; Cdecl; //注意与VC++中对应函数的参数说明一致
TCBOOLProcess=Function(...) Bool;Cdecl; //注意参数次序、类型对应
TCvoidProcess=Procedure(...);Cdecl; //对应“过程”
implementation
Var CDWORDProcess: TCDWORDProcess;
CBOOLProcess: TCBOOLProcess;
CvoidProcess: TCvoidProcess;
Var DLL_Handle: THandle;
Function LoadDLL: Bool; //动态连接库加载
Var Loadok: Bool; //动态连接库加载路径
SysDLLPath: String;
Begin
Loadok:=True;
LoadDLLsOk:=False;
SysDLLPath:=.... //DLL所在的目录;
DLL_Handle:=LoadLibrary(PChar(SysDLLPath)); //安给定的路径加载
If DLL_Handle>0 Then //若加载成功,
Begin //则依次定位三个函数
Try
LoadDLLsOk:=True;
@CDWORDProcess:=GetProcAddress(DLL_Handle,'CDWORDProcess');//致意注意大小写!
@CBOOLProcess:=GetProcAddress(DLL_Handle,'CBOOLProcess');
@CvoidProcess:=GetProcAddress(DLL_Handle,'CvoidProcess');
Except
FreeLibrary(DLL_Handle);
Loadok:=False;
End
End
Else
Loadok:=False;
Result:=Loadok;
End;
initialization //初始化处理
LoadSmooths;
finalization
If DLL_Handle>0 Then //退出处理
FreeLibrary(DLL_Handle);