你是想手动来完成BDE注册的工作,也就是完成譬如 InstallShield 注册BDE的工作吗?为什么不用 InstallShield 等工具呢?当然,如果想搞懂具体实现除外。
Sorry,我帮不了你……
Sorry,我帮不了你……
解决方案 »
- ShockwaveFlash1.CallFunction总提示错误
- 一个关于toolbar的很菜的问题
- 在 弹出新窗口后怎么处理cookie?
- C#Build的下载地址ftp://ftpd.borland.com/download/csharpbuilder/csb1/csb1_per_noncommercial.exe
- 关于Isapi服务器应用程序的问题!小弟很急!!!!
- 用 ListView 做类似 flashget 下载图表那个小圆球的东西,遇到一些问题。。。。。。。。。。。。
- 有谁做过teechart方面的,请帮忙看看?有什么问题?
- 解除和建立对象时的问题
- Delphi有没有求两个日期之间的天数的函数,是怎么样的?
- Delphi7的stringgird控件怎么修改cell里的数字且不变回初始数字
- 可用分为什么不增加?
- table的index问题
procedure InitBde;
var
DataDirectory : string;
ARegistry : TRegistry;
begin
DataDirectory := ExtractFilePath( Application.ExeName );
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;