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

如何偵測是否已安裝BDE

答題得分者是:hagar
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-04-09 16:11:19 IP:211.23.xxx.xxx 未訂閱
如題~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-04-09 16:21:47 IP:202.39.xxx.xxx 未訂閱
http://www.lmc-mediaagentur.de/dpool/tips/0301.htm http://www.q3.nu/trucomania/truco.cgi?475&ing http://www.swissdelphicenter.ch/en/showcode.php?id=559 最簡單的:
var
  IsBDEExist: Boolean;
begin
  IsBDEExist := (dbiInit(nil) = 0)
end;
--- 每個人都是一本書
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-04-09 16:52:30 IP:211.23.xxx.xxx 未訂閱
引言: http://www.lmc-mediaagentur.de/dpool/tips/0301.htm http://www.q3.nu/trucomania/truco.cgi?475&ing http://www.swissdelphicenter.ch/en/showcode.php?id=559 最簡單的:
var
  IsBDEExist: Boolean;
begin
  IsBDEExist := (dbiInit(nil) = 0)
end;
--- 每個人都是一本書
糟糕~~ 執行這一行 IsBDEExist := (dbiInit(nil) = 0) 在 WIN2K 下執行會無法攔截錯誤耶~~ 且~~WIN2K會強制關閉程式~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心 發表人 - Jasonwong 於 2003/04/09 16:54:31
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-04-09 17:01:28 IP:202.39.xxx.xxx 未訂閱
1.有沒有 uses BDE: ? 2.有沒有什麼錯誤訊息? --- 每個人都是一本書
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-04-09 17:18:54 IP:211.23.xxx.xxx 未訂閱
1.有沒有 uses BDE: ? 有~~ 2.有沒有什麼錯誤訊息? 會出現兩個錯誤訊息 [第一個] 應用程式發生例外,不明的軟體例外錯誤... [第二個] Exception EDBEngineError in module Setup.exe at 000823E6 An Error Occurrred while attempting to initalize the Borland Database Engine (error $2108) -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-04-09 17:54:43 IP:202.39.xxx.xxx 未訂閱
小弟找了 Win2000(沒安裝 BDE)試了一下, 但沒 Exception 的情形發生。 --- 每個人都是一本書
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-04-09 18:02:05 IP:211.23.xxx.xxx 未訂閱
我總共安裝了三台~~~每台都會發生以上的情況~~ 哇咧~~~怎麼這樣~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-04-09 18:13:23 IP:218.32.xxx.xxx 未訂閱
試試看用 Registry Check :
uses Registry;
procedure TForm1.Button1Click(Sender: TObject);
var Reg:TRegistry;
begin
   Reg := TRegistry.Create;
   try
     Reg.RootKey := HKEY_LOCAL_MACHINE;
     if Reg.OpenKey('\Software\Borland\Database Engine', False) then
       showmessage('BDE installed')
     else
       showmessage('BDE not install yet !');
   finally
     Reg.Free;
   end;
end;    
資料庫種類繁多, 記得先說用啥資料庫喔
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-04-10 00:37:18 IP:61.70.xxx.xxx 未訂閱
引言: 試試看用 Registry Check : [blue]
uses Registry;
procedure TForm1.Button1Click(Sender: TObject);
var Reg:TRegistry;
begin
   Reg := TRegistry.Create;
   try
     Reg.RootKey := HKEY_LOCAL_MACHINE;
     if Reg.OpenKey('\Software\Borland\Database Engine', False) then
       showmessage('BDE installed')
     else
       showmessage('BDE not install yet !');
   finally
     Reg.Free;
   end;
end;    
這個我也試過~~不過不準~~ 不準的原因是因為~~如果這台有裝過BDE~~那麼在反安裝時~~不會移除的很乾淨~~也就是會在登記資料庫中留下上面要測試的東東~~ 我試過一台~~就是如此~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-04-10 08:40:42 IP:202.39.xxx.xxx 未訂閱
用 try .. except 來攔截呢? --- 每個人都是一本書
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-04-10 08:50:09 IP:211.23.xxx.xxx 未訂閱
hagar 大大~~ 我對不起你~~~我都試過了~~就速沒用~~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#12 引用回覆 回覆 發表時間:2003-04-10 09:17:46 IP:202.39.xxx.xxx 未訂閱
可以貼一下您大概的程式碼? 您是在 IDE 底下 run 程式還是? --- 每個人都是一本書
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#13 引用回覆 回覆 發表時間:2003-04-10 09:29:02 IP:211.23.xxx.xxx 未訂閱
引言: 可以貼一下您大概的程式碼? 您是在 IDE 底下 run 程式還是? --- 每個人都是一本書
程式碼就是上面提到的那些啊~~~我沒有再加一些特別地~~ 我是IDE跟獨立執行都有~~ 謝謝大大不耐煩的回答~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#14 引用回覆 回覆 發表時間:2003-04-10 10:11:35 IP:202.39.xxx.xxx 未訂閱
BDE error $2108 是說: 'cannot locate idapi32.dll' 不知您的程式有沒有用其它 DB 元件去做了透過 BDE 連線的動作 導致還沒執行 dbiInit 這行就產生錯誤? --- 每個人都是一本書
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#15 引用回覆 回覆 發表時間:2003-04-10 16:38:47 IP:211.23.xxx.xxx 未訂閱
引言: BDE error $2108 是說: 'cannot locate idapi32.dll' 不知您的程式有沒有用其它 DB 元件去做了透過 BDE 連線的動作 導致還沒執行 dbiInit 這行就產生錯誤? --- 每個人都是一本書
唉呀~~真是一語警醒夢中人~~ 因為我的程式中必須動態建立一個 BDE 別名~~ 所以我用 SESSION 元件~~ 現在我把SESSION.ACTIVE設FALSE之後~~ 就好了~~ 特別感謝 hagar 大大這兩天來不停的指導~~ 真是愛死你了呢~~~哈哈~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
yoo
一般會員


發表:1
回覆:4
積分:1
註冊:2002-10-26

發送簡訊給我
#16 引用回覆 回覆 發表時間:2005-06-28 09:45:22 IP:61.218.xxx.xxx 未訂閱
Hagar與Mickey大大真是厲害ㄚ! 剛好最近寫的小東西必須判斷BDE是否已經安裝,正好派上用場!
系統時間:2024-11-23 22:02:59
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!