如何偵測是否已安裝BDE |
答題得分者是:hagar
|
Jasonwong
版主 發表:49 回覆:931 積分:581 註冊:2006-10-27 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
Jasonwong
版主 發表:49 回覆:931 積分:581 註冊:2006-10-27 發送簡訊給我 |
引言: 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 最簡單的:糟糕~~ 執行這一行 IsBDEExist := (dbiInit(nil) = 0) 在 WIN2K 下執行會無法攔截錯誤耶~~ 且~~WIN2K會強制關閉程式~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心 發表人 - Jasonwong 於 2003/04/09 16:54:31var IsBDEExist: Boolean; begin IsBDEExist := (dbiInit(nil) = 0) end;--- 每個人都是一本書
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心 |
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
Jasonwong
版主 發表:49 回覆:931 積分:581 註冊:2006-10-27 發送簡訊給我 |
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 發送簡訊給我 |
|
Jasonwong
版主 發表:49 回覆:931 積分:581 註冊:2006-10-27 發送簡訊給我 |
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
試試看用 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 發送簡訊給我 |
引言: 試試看用 Registry Check : [blue]這個我也試過~~不過不準~~ 不準的原因是因為~~如果這台有裝過BDE~~那麼在反安裝時~~不會移除的很乾淨~~也就是會在登記資料庫中留下上面要測試的東東~~ 我試過一台~~就是如此~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心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;
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心 |
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
Jasonwong
版主 發表:49 回覆:931 積分:581 註冊:2006-10-27 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
Jasonwong
版主 發表:49 回覆:931 積分:581 註冊:2006-10-27 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
Jasonwong
版主 發表:49 回覆:931 積分:581 註冊:2006-10-27 發送簡訊給我 |
引言: BDE error $2108 是說: 'cannot locate idapi32.dll' 不知您的程式有沒有用其它 DB 元件去做了透過 BDE 連線的動作 導致還沒執行 dbiInit 這行就產生錯誤? --- 每個人都是一本書唉呀~~真是一語警醒夢中人~~ 因為我的程式中必須動態建立一個 BDE 別名~~ 所以我用 SESSION 元件~~ 現在我把SESSION.ACTIVE設FALSE之後~~ 就好了~~ 特別感謝 hagar 大大這兩天來不停的指導~~ 真是愛死你了呢~~~哈哈~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心 |
yoo
一般會員 發表:1 回覆:4 積分:1 註冊:2002-10-26 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |