我在DLL入口函数中这样创建一个对象不可以么?为什么总是出错?呼唤高手!!在线等待~~~
rzg 2003-08-06 10:43:17 我在DLL入口汉书中这样创建一个对象不可以么?为什么总是出错?呼唤高手!!
var
DLLApp: TApplication;
DLLScr: TScreen;
procedure OnDLLLoad(Reason: Integer);
begin
case Reason of
DLL_PROCESS_ATTACH:
begin
DLLApp := Application;
DLLScr := Screen;
//在DLL启动的时候创建数据模块对象。
if DM=nil then
DM := TDM.Create(Application);
end;
DLL_PROCESS_DETACH:
begin
Application := DLLApp;
Screen := DLLScr;
//在DLL启动的时候创建释放该对象。
if DM<>nil then
FreeAndNil(DM);
end;
end;
end;
procedure ConnDatabase(ADOC:TADOConnection);
begin
DM.ADOC := ADOC;
end;
exports
ConnDatabase;
begin
DLLProc := @OnDLLLoad;
OnDLLLoad(DLL_PROCESS_ATTACH);
end.
在动态连接库调用时退出程序总会有异常触发!