procedure InitBde;
var
DataDirectory : string;
ARegistry : TRegistry;
begin
DataDirectory := ExtractFilePath( Application.ExeName );//路径这里要改成bde文件放置的路径
DataDirectory := DataDirectory+'bde\';
ARegistry := TRegistry.Create;
with ARegistry do {创建一个TRegistry对象实例 }
begin
RootKey := HKEY_LOCAL_MACHINE;{指定根键为HKEY_LOCAL_MACHINE}
if not OpenKey( 'Software\Borland\BLW32', False ) then
begin
// showmessage('key 1'); {写入BDE语言驱动程序所在的目录,即当前程序目录 }
OpenKey( 'Software\Borland\BLW32', True );
WriteString( 'BLAPIPATH', DataDirectory );
end;
CloseKey; {关闭主键,同时将信息写入注册表}
RootKey := HKEY_LOCAL_MACHINE;
if not OpenKey('Software\Borland\Database Engine',False) then
begin
// showmessage('key 2');
OpenKey('Software\Borland\Database Engine',True);
WriteString( 'DLLPATH', DataDirectory );
end;
CloseKey; {关闭主键,同时将信息写入注册表}
Destroy; {释放内存 }
end;
end;
var
DataDirectory : string;
ARegistry : TRegistry;
begin
DataDirectory := ExtractFilePath( Application.ExeName );//路径这里要改成bde文件放置的路径
DataDirectory := DataDirectory+'bde\';
ARegistry := TRegistry.Create;
with ARegistry do {创建一个TRegistry对象实例 }
begin
RootKey := HKEY_LOCAL_MACHINE;{指定根键为HKEY_LOCAL_MACHINE}
if not OpenKey( 'Software\Borland\BLW32', False ) then
begin
// showmessage('key 1'); {写入BDE语言驱动程序所在的目录,即当前程序目录 }
OpenKey( 'Software\Borland\BLW32', True );
WriteString( 'BLAPIPATH', DataDirectory );
end;
CloseKey; {关闭主键,同时将信息写入注册表}
RootKey := HKEY_LOCAL_MACHINE;
if not OpenKey('Software\Borland\Database Engine',False) then
begin
// showmessage('key 2');
OpenKey('Software\Borland\Database Engine',True);
WriteString( 'DLLPATH', DataDirectory );
end;
CloseKey; {关闭主键,同时将信息写入注册表}
Destroy; {释放内存 }
end;
end;
用delphi自带的installshield吧
很多安装程序都可以的。
关于分发的其它内容,请参阅缺省安装在Delphiιdoc目录中的delploy.txt文件。一般包含下列文件:
文件名说明
IDAPI01.DLLBDEAPIDLL
IDABAT01.DLLBDEBATCHUTILITIESDLL
IDQRY01.DLLBDEQUREYDRIVEDLL
IDPDX01.DLLDEIPARADOXDRIVEDLL
IDDBAS01.DLLBDEDBASEDRIVEDLL
IDR10009.DLLBDERESOUSEDLL
ILD01.DLL
LANGUAGE
DRIVEDLL
TUTILITY.DLL
BDETUTILITYDLL
BDECFG.EXEBDECONFIGURATIONUTILITY
BDECOFG.HLPBDECONFIGURITIONUTILITYHELP
IDAPI.CFGBDE(IDAPI)CONFIGFILE解决了请给分
---- 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连接帮助文件,可以不要//注册表reg := TRegistry.Create;
reg.RootKey := HKEY_LOCAL_MACHINE;
reg.OpenKey('software\borland\blw32', false);
reg.WriteString('blapipath', 'bde所在路径'); //设置语言驱动程序路径
reg.CloseKey;
reg.OpenKey('software\borland\Database Engine', false);
reg.WriteString('dllpath', 'bde所在路径');
reg.CloseKey;
reg.Free;
reg := TRegistry.Create;
reg.RootKey := HKEY_LOCAL_MACHINE;
reg.OpenKey('software\borland\blw32', true);
reg.WriteString('blapipath', 'bde所在路径'); //设置语言驱动程序路径
reg.CloseKey;
reg.OpenKey('software\borland\Database Engine', true);
reg.WriteString('dllpath', 'bde所在路径');
reg.CloseKey;
reg.Free;