做安裝程序時可以手工選擇添加數據庫的驅動文件,這樣可大大減小安裝程序的大小。
一、不可缺少的文件
Blw32.dll:語言驅動函數庫。
Idapi32.dll:BDE基本函數庫。
Fareast.btl、charset.cvb:遠東語言驅動程序,對中文軟件不可缺少。
Idr20009.dll:錯誤信息庫。
bantam.dll:未知用途,但不可缺少
二、數據庫驅動程序(根據需要選擇一個或多個)
Idasci32.dll:Ascii文本數據庫驅動程序函數庫,如果不用Ascii文本數據庫,可以不要。
Iddao32.dll:Access數據庫驅動程序函數庫,如果不用Access數據庫,可以不要。
Iddbas32.dll:dBase數據庫驅動程序函數庫,如果不用dBase數據庫,可以不要。
Idodbc32.dll:ODBC數據庫驅動程序函數庫,如果不用ODBC數據庫,可以不要。
Idpdx32.dll:Paradox數據庫驅動程序函數庫,如果不用Paradox數據庫,可以不要。
三、其它驅動程序和配置文件(根據需要選擇一個或多個)
Idbat32.dll:批操作驅動程序函數庫,如果不用TBatchMove控件或DbiBatchMove類函數,可以不要。
Iddr32.dll:Data Repository驅動程序函數庫,如果不用Data Repository功能,可以不要。
Idprov32.dll:BDE DataSet provide驅動程序函數庫,如果不用TProvider控件,可以不要。
Idqbe32.dll:QBE驅動程序函數庫,如果不用Query By Example,可以不要。
Idsql32.dll:SQL查詢驅動程序函數庫,如果不用TQuery進行查詢,可以不要。
Idapi32.cfg:BDE配置文件,如果程序中沒有特殊要求,可以不要。也可以在BDE管理器中設置正確後再分發。
四、其它文件(一般不用)
BDE32.HLP、BDE32.CNT:BDE幫助文件,可以不要。
BdeAdmin.exe、BdeAdmin.HLP、BdeAdmin.CNT:BDE管理器及幫助文件,如果不會發生要求軟件用戶自己配置BDE的情況時,可以不要。
其它*.BLL:其它國家和地區的語言驅動程序,可以不要。
DataBump.EXE、DataBump.HLP、DataBump.CNT:數據庫數據轉移工具及幫助文件,可以不要。
Localsql.HLP、Localsql.CNT:SQL查詢語句幫助文件,可以不要。
Sqllnk32.HLP、Sqllnk32.CNT:SQL連接幫助文件,可以不要。
五、修改注冊表
在根據需要選擇文件後,還要寫注冊表文件。這個應該不成問題,可以手工設置,但最好在程序中設置,在發現注冊表中沒有相應鍵值時寫入,用TRegFile對象用不了幾行代碼的。需要設置的注冊表鍵值有(在調用數據庫操作前需要有正確的鍵值存在):
數據驅動程序所在目錄的設置:
HKEY_LOCAL_MACHINE\Software\Borland\Database Engine\DLLPATH(字符串值)
語言驅動程序所在目錄的設置:
HKEY_LOCAL_MACHINE\Software \Borland\BLW32\BLAPIPATH(字符串值)
語言驅動程序文件名:HKEY_LOCAL_MACHINE\ Software\Borland\BLW32\LOCALE_LIB#(字符串值)
其中#為編號,按順序為0、1、2、3......如:
HKEY_LOCAL_MACHINE\Software\Borland\BLW32\LOCALE_LIB0="fareast.btl"
HKEY_LOCAL_MACHINE\Software\Borland\BLW32\LOCALE_LIB1="usa.btl"
就這些了,按此辦法即可有效減少BDE驅動程序的大小,例如只用TTable控件操作Paradox數據庫,則只要Idapi32.dll、Blw32.dll、Idr20009.dll、Fareast.btl、charset.cvb.Idpdx32.dll、bantam.dll七個文件即可。
這些文件可放在任何一個目錄,只要在注冊表指明即可。若將這些文件放在您的可執行程序的安裝目錄中,也可以不寫注冊信息(我做的一個軟件中就是這樣安裝的)。