BDE打包问题(50分)

  • 主题发起人 主题发起人 fzzz_radium
  • 开始时间 开始时间
F

fzzz_radium

Unregistered / Unconfirmed
GUEST, unregistred user!
我做了一个数据库程序,准备发布,如何进行打包,我知道用IS Express ,有谁能说
的具体点。问题在于,我想打包后的程序尽量小,(有人告诉我,bde要十几m,)
也就要bde“减肥”。 我用的是paradox7的表,如何打包呢?
本人菜鸟,希望大家多指教
 
还有一些想问的: 那些文件是必须的,对于paradox7而言
 
查询以下旧帖,里面应该有介绍
 
帮忙找一下吧,
 
告诉你个,我喜欢用的笨办法
首先备份
C:/Borland/Borland Shared/BDE
然后运行你的程序时
去删除C:/Borland/Borland Shared/BDE目录下的文件
删不掉的都是必须的文件,如果都能删掉,则去查查,看是否其他路径也有/BDE下的文件
当你确定必须文件时,打包时直接将其与程序放到同一路径下即可
 
好有趣的方法,呵呵。[:D]
 
根据程序中用的控件不同,bde所需文件也不同,你删一个运行程序,行的话再删一个,不行就恢复
 
嗯,这个方法挺好的,但是比较麻烦,我具体想知道的就是和parodox7相捆绑的bde文件。
其他的语言文件的我差不多知道了。
 
一共是10个文件。
bantam.dll
blw32.dll
charset.cvb
idapi32.cfg
idapi32.dll
idbat32.dll
idpdx32.dll
idr20009.dll
idsql32.dll
usa.btl
最后还要在注册表里面申明。
我的那个例子是这样的。你看看。
我用的也是paradox。
REGEDIT4
[HKEY_LOCAL_MACHINE/Software/borland]
[HKEY_LOCAL_MACHINE/Software/borland/blw32]
"Blapipath"="C://Program Files//home for student//bde//"
"LOCALE_LIB0"="C://Program Files//home for student//bde//Fareast.bll"
"LOCALE_LIB1"="C://Program Files//home for student//bde//Usa.bll"
[HKEY_LOCAL_MACHINE/Software/borland/database engine]
"Configfile01"="C://Program Files//home for student//bde//Idapi.cfg"
"Dllpath"="C://Program Files//home for student//bde//"
 
多谢sohuandsina 给出如此详细的说明
我还有一个问题,我做了安装后,却没有uninstall,真不知道怎么回事,
我把IS的那个automatic uninstall什么的,勾掉了啊,却没有反安装,
多指教啊
 
Delphi程序员都知道,在数据库应用程序开发完成后,要发布程序需要同时发布BDE(Borland Database Engine),否则会引起错误“A Error occurred while attempingto initilize Borland Database Engine(Error $2109)”。当觉得程序太大而辛辛苦苦精简自己的程序到满意时,却发现BDE管理程序器需要9M之巨,不由感到沮丧,真有点自己的努力被糟蹋的感觉。不过也不必太沮丧,只要肯尝试,还是有办法来精简BDE的。
---- 首先来看看BDE目录中的文件,所有文件确实有近9M大吧。不过有些可能是用不到的,关键文件的作用可参见Bde32.HLP中“Introduction to Borland Database Engine”下的“Core BDE Files”,其中列出了BDE的关键文件及其作用,可以以此作为依据来尝试精简BDE驱动程序。下面是各个文件的作用:
一、不可缺少的文件
---- Blw32.dll:语言驱动函数库。
---- Idapi32.dll:BDE基本函数库。
---- Fareast.bll、Usa.bll:远东语言及美国语言驱动程序,对中文软件不可缺少。
---- Idr20009.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="fareasst.bll"
 HKEY_LOCAL_MACHINE/Software/Borland/BLW32/LOCALE_LIB1="usa.bll"
---- 就这些了,按此办法即可有效减少BDE驱动程序的大小,例如只用TTable控件操作Paradox数据库,则只要Idapi32.dll、Blw32.dll、Idr20009.dll、Fareast.bll、Usa.bll、Idpdx32.dll六个文件即可。
---- 这些文件可放在任何一个目录,只要在注册表指明即可。OK,BDE由9M多减到不到2M,ZIP一下就700多K了,比原来的应用系统减少了不少吧。

另外:我建议你用DELPHI5.0的安装程序
 
我C++ Builder做了一个BDE安装包,大约有6M。
安装即可。
 
多些各位了
 
后退
顶部