怎样动态调用三层结构的dll(其中有数据模版,连接数据库就没响应,就像死机),请帮帮忙(100分)

  • 主题发起人 主题发起人 ljy_20
  • 开始时间 开始时间
L

ljy_20

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样动态调用有包含三层结构的dll
请帮帮忙
 
什么意思的啊?
估计是你的远程数据模块作为服务端的吧!
那要知道远程数据模块中的ProgId或ClsId之类的东西。
 
我用:
loadlibrary(dllname);
freelibrary(handle);
在dll檔沒數據庫連接就可以載入
 
提问时请将问题描述清楚。
你的Server调用DLL,还是Client调用DLL?怎么调的?
我自己做系统时在客户端的功能模块也是用DLL,没有问题的。
我在FormOnCreate里将SocketConnetion.Connected设为True,然后ClientDataSet.Open;
在FormDestroy里先ClientDataSet.Close,再SocketConnetion.Connected := False。
 
我的dll是在客戶端被調用的
我只是將一個可編譯執行的exe的程式頭
:program改成了library
如果程序中沒三層數據連接用下面方法就沒問題
loadlibrary(dllname);
freelibrary(handle);
不過我在dll寫了個過程可實現調用dll
但不能同時調用多次(show與showmodle)
前者,就沒法顯示(有閃一下,就沒了)
后者,同時只可調用一次
我想在同一畫面可同時開起多個相同的dll
 
問題就是這樣的
 
在Dll寫個函數:
proceduredo
Test;

begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end;

exports
dotest;
在主程序中用:
proceduredo
Test;cdecl;external'Project1.dll';
調用即可
 
接受答案了.
 
后退
顶部