制作BDE数据库安装文件 我在制作BDE数据库安装文件时,想将数据库文件与应用程序文件安装在同一目录[INSTALLDIR]下,以便在其他电脑上安装后即可使用,但却无法办到。请问该怎么办???非常感谢!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你不要同时发布BDE的配置文件 Idapi32.cfg 试试看,或者是需要把它的设置(主要是目录)改为正确的。 BDE的安装是需要在注册表中写信息的。参考一下在注册表吧。HKEY_LOCAL_MACHIN\SOFTWARE\Borland\Database Engine.HKEY_LOCAL_MACHIN\SOFTWARE\Borland\BLW32 你用wise把BDE所需要都打包进去就可以了. 还可以自个写程序来做(注册bde,bde可直接拷贝到安装目录中):程序在Form1的Create中设定数据源DSN,同时设置其他控件属性。其中,设定DSN数据源将用到注册表操作。procedure TForm1.FormCreate(Sender: TObject); var registerTemp : TRegistry; bData : array[ 0..0 ] of byte; begin //以下程序设置DSN数据源; registerTemp := TRegistry.Create; //建立一个Registry实例 with registerTemp do begin RootKey:=HKEY_LOCAL_MACHINE; //设置ROOT; if OpenKey('Software\ODBC\ODBC.INI\ODBC Data Sources',True) then begin WriteString( 'MyAccess', 'Microsoft Access Driver (*.mdb)' ); //设定DSN为“MyAccess”; end else begin showmessage('增加ODBC数据源失败'); exit; end; CloseKey; //找到或创建Software\ODBC\ODBC.INI if OpenKey('Software\ODBC\ODBC.INI\MyAccess',True) then begin //定义数据库目录为:程序目录\data\database1.mdb WriteString( 'DBQ',extractfilepath(application.exename)+'data\database1.mdb'); WriteString( 'Description','ODBC Express演示数据源' ); //数据源描述; WriteString( 'Driver', 'C:\PWIN98\SYSTEM\odbcjt32.dll' ); //驱动程序DLL文件 WriteInteger( 'DriverId', 25 ); WriteString( 'FIL', 'Ms Access;' ); WriteInteger( 'SafeTransaction', 0 ); WriteString( 'UID', '' ); //用户名称 bData[0] := 0; WriteBinaryData( 'Exclusive', bData, 1 ); WriteBinaryData( 'ReadOnly', bData, 1 ); end else begin showmessage('增加ODBC数据源失败'); exit; end; 我是一个初学者,对注册表也不了解。我用installshield制作安装程序,选择BDE后,选中我的数据库别名,路径无论点击缺省按钮还是具体写明路径,在其他电脑上安装后,都无法立即执行,提示未知数据库,需要在控制面板中手动重新设置。我不知问题出在哪里?我想在点击SETUP完成安装后,即可运行程序,请问可以吗?否则简直无法发布程序。 我也碰到和楼主一样的问题,用BDE的程序。希望安装好以后直接可以运行。不要配置ODBC和BDE有办法实现吗? 学习以下,bde可直接拷贝到安装目录中,但是都需要拷那些文件呢? 不需要自己拷贝,只需要在制作按照程序时选中BDE引擎就可以了,它会自动安装的 http://wuly.533.net/tips/database/d015.htm 我的毕业设计就是这种情况,我来说一下吧1 在你的自己电脑上开发的时候,把“数据库”放在你要在目标机上要安装的目录相同的目录,并设好BDE Alias,注意,是Alias2 重新编译你的程序3 用installsheild express 打包你的程序,要打包BDE 你好,我按此试了一下,还是不行.我本机上的数据库安在C盘PROGRAM FILES的一个目录下,在用installsheild express 制作时,将数据库文件放在installsheild所提供的[PROGRAMFILES](即程序文件夹)的相同名称的一个目录下,在其他机器上安装后,还是不行(该机器的程序文件夹也在C盘).我不知问题出在哪里?而且在卸载时(以前也是),出现出错对话框,说所需的网络资源无法使用,要搜索.msi文件.问题出在哪里?望高手指教!!! 自已打包发行BDE ,有很多文章的。你可以去找一下看看。主要是以下几点:1、BDE的路径是在注册表中HKEY_LOCAL_MACHINE\SOFTWARE\BORLAND\BLW32的BLAPIPATH中写明的。2、另外请参考HKEY_LOCALE_MACHINE\SOFTWARE\BORLAND\DATABASE ENGINE中键值。如果你不想把别名的参数程序中写死,你可以通过动态创建TSESSION和TDATABASE的方法,这方面的书还是很多的。 字符串处理问题 TgifImage在哪个面版? 如何用一个TIMER检测当前鼠标是否还在form范围内 DELPHI爱好者的群1509183 用户delphi编写程序控制word与PowerPoint 寻intsallshield Express 的中文包 高手帮忙? 请问深圳有D6的汉化版了买吗? 有数据库源程序的请进来(100) 相同的语句,在SQL Explorer中和FoxPro中执行,却得到不同的结果 在程序中打开ppt文件,怎样做到跟在文件上右键选择“显示”一样?? Delphi中怎样开远程调试?(Remote Debug)只有20分了
参考一下在注册表吧。
HKEY_LOCAL_MACHIN\SOFTWARE\Borland\Database Engine.
HKEY_LOCAL_MACHIN\SOFTWARE\Borland\BLW32
程序在Form1的Create中设定数据源DSN,同时设置其他控件属性。其中,设定DSN数据源将用到注册表操作。
procedure TForm1.FormCreate(Sender: TObject);
var
registerTemp : TRegistry;
bData : array[ 0..0 ] of byte;
begin
//以下程序设置DSN数据源;
registerTemp := TRegistry.Create;
//建立一个Registry实例
with registerTemp do
begin
RootKey:=HKEY_LOCAL_MACHINE; //设置ROOT;
if OpenKey('Software\ODBC\ODBC.INI\ODBC Data Sources',True) then
begin
WriteString( 'MyAccess', 'Microsoft Access Driver (*.mdb)' ); //设定DSN为“MyAccess”;
end
else
begin
showmessage('增加ODBC数据源失败');
exit;
end;
CloseKey;
//找到或创建Software\ODBC\ODBC.INI
if OpenKey('Software\ODBC\ODBC.INI\MyAccess',True) then
begin
//定义数据库目录为:程序目录\data\database1.mdb
WriteString( 'DBQ',extractfilepath(application.exename)+'data\database1.mdb');
WriteString( 'Description','ODBC Express演示数据源' ); //数据源描述;
WriteString( 'Driver', 'C:\PWIN98\SYSTEM\odbcjt32.dll' ); //驱动程序DLL文件
WriteInteger( 'DriverId', 25 );
WriteString( 'FIL', 'Ms Access;' );
WriteInteger( 'SafeTransaction', 0 );
WriteString( 'UID', '' ); //用户名称
bData[0] := 0;
WriteBinaryData( 'Exclusive', bData, 1 );
WriteBinaryData( 'ReadOnly', bData, 1 );
end
else
begin
showmessage('增加ODBC数据源失败');
exit;
end;
希望安装好以后直接可以运行。
不要配置ODBC和BDE
有办法实现吗?
1 在你的自己电脑上开发的时候,把“数据库”放在你要在目标机上要安装的目录相同的目录,并设好BDE Alias,注意,是Alias
2 重新编译你的程序
3 用installsheild express 打包你的程序,要打包BDE
1、BDE的路径是在注册表中HKEY_LOCAL_MACHINE\SOFTWARE\BORLAND\BLW32的BLAPIPATH中写明的。
2、另外请参考HKEY_LOCALE_MACHINE\SOFTWARE\BORLAND\DATABASE ENGINE中键值。如果你不想把别名的参数程序中写死,你可以通过动态创建TSESSION和TDATABASE的方法,这方面的书还是很多的。