線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1676
推到 Plurk!
推到 Facebook!

關於 dll ?

 
cooper
一般會員


發表:17
回覆:41
積分:11
註冊:2002-03-25

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-04-08 12:45:04 IP:61.231.xxx.xxx 未訂閱
請問一下在 dll 檔中是否無法透過 ado 物件來連結資料庫 ? 小弟做了以下測試    
procedure test(dbPath: AnsiString); export;
   .
   .
procedure
test(dbPath: AnsiString);
var
  f: TForm;
  qryTest: TADOQuery;
begin
  f := TForm.Create(Application);
  f.Caption := 'test form';
  f.ShowModal;
  {以上都 ok}
  qryTest := TADOQuery(Application);
  {從上面這行就會丟出一個無法初始化的 exception}
   .
   .
end;
請問這真的是因為在 dll 內部能用 ado 物件嗎 ? 還是小弟寫錯了呢 ? 謝謝各位囉 :) Regards, cooper
lee
站長


發表:55
回覆:173
積分:45
註冊:2002-02-27

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-04-08 13:12:21 IP:61.219.xxx.xxx 未訂閱
引言: 請問這真的是因為在 dll 內部能用 ado 物件嗎 ? 還是小弟寫錯了呢 ? 謝謝各位囉 :)
好像寫錯了喔,試試下面的
procedure test(dbPath: AnsiString);
var  f: TForm;
  qryTest: TADOQuery;
begin
  f := TForm.Create(Application);
   f.Caption := 'test form';
   f.ShowModal;  {以上都 ok}
   qryTest := TADOQuery.create(Application);  {從上面這行就會丟出一個無法初始化的 exception}
   ...
end;
~~~Delphi K.Top網站總管~~~
------
~~~Delphi K.Top網站總管~~~
cooper
一般會員


發表:17
回覆:41
積分:11
註冊:2002-03-25

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-04-08 18:50:08 IP:61.231.xxx.xxx 未訂閱
sorry ~ 我原始的 code 是用 TADOQuery.Create(Application); 當我的 host application run 起來的時候會丟出 coInitialize 的 exception, 這到底是怎麼回是勒 ?? 謝謝各位 :) Regards, cooper
lee
站長


發表:55
回覆:173
積分:45
註冊:2002-02-27

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-04-09 12:51:32 IP:61.219.xxx.xxx 未訂閱
引言: sorry ~ 我原始的 code 是用 TADOQuery.Create(Application); 當我的 host application run 起來的時候會丟出 coInitialize 的 exception, 這到底是怎麼回是勒 ?? 謝謝各位 :) Regards, cooper
找到原因了,這是因為呼叫的應用程式未啟動OLE, 可在呼叫 .DLL的主程式中加入 uses ADODB; 就可以解決此問題了! try it ! ~~~Delphi K.Top網站總管~~~
------
~~~Delphi K.Top網站總管~~~
cooper
一般會員


發表:17
回覆:41
積分:11
註冊:2002-03-25

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-04-09 17:57:24 IP:61.231.xxx.xxx 未訂閱
>找到原因了,這是因為呼叫的應用程式端為啟動OLE, >可在呼叫 .DLL的主程式中加入 uses ADODB; >就可以解決此問題了! >try it ! 太感動了,我還以為沒人要幫我了呢!站大您真是我的救星呀! 我測試過了果然可以解決,不過對於你所說的原因我並不是 很懂耶,不知道我該看些什麼文件 來建立我的觀念呢?最後真的是太謝謝您了 :) Regards, cooper
lee
站長


發表:55
回覆:173
積分:45
註冊:2002-02-27

發送簡訊給我
#6 引用回覆 回覆 發表時間:2002-04-09 18:12:33 IP:61.219.xxx.xxx 未訂閱
我也是測試後才發現的,一開始我想回覆您,我的測試結果與您一樣,後來才想到會不會是未引入adodb才會出現initialize啟動錯誤! 該看什麼文件?我想可能多看一些書,或多參考別人的程式範例,或是與網友互相切磋,這就是本網站的目的,教學相長,在幫別人解決問題的同時自己也相對成長許多,您說是嗎?    ~~~Delphi K.Top網站總管~~~
------
~~~Delphi K.Top網站總管~~~
系統時間:2024-04-19 19:00:11
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!