转贴:
一. 通过BDE访问Access97
1. 打开BDE Administator, Configuration -> Drivers ->
Native ->
MSACCESS ,将DLL32改为IDDA3532.DLL.
2. 新建一工程,在Form1上放置
TTable,TDataSource,TDatabase,TDbGrid控件
各一个.
3. 在Form1的OnCreate事件中放入如下代码(C++Builder程
序,Delphi大同小异),
void __fastcall TForm1::FormCreate(TObject *Sender)
{
AnsiString DATABASE_NAME = "DATABASE
NAME="+GetCurrentDir()+"//DATA//DELPHIBBS.MDB";
DataSource1->DataSet = Table1;
DBGrid1->DataSource = DataSource1;
Database1->DriverName = "MSACCESS";
Database1->Params->Clear();
Database1->Params->Add(DATABASE_NAME);
Database1->Params->Add("USER NAME=");
Database1->Params->Add("OPEN MODE=READ/WRITE");
Database1->Params->Add("LANGDRIVER=");
Database1->Params->Add("SYSTEM DATABASE=");
Database1->Params->Add("PASSWORD=");
Database1->LoginPrompt = false;
Database1->DatabaseName = "Fuweng";
Table1->DatabaseName = "Fuweng";
Table1->TableName = "letters";
Table1->Active = true;
}
/*
多方便!多省事!
有了上面的代码,程序一启动,letters表就被打开了,几乎是
"全自动"!
当然,朋友们还可根据实际情况做进一步的完善,比如:加入
异常保护...
访问Access97数据库的方法有很多,但我还是比较喜欢通过
代码来实现,
因为这样最灵活,且排除了在程序外边手工设置别名带来的
诸多麻烦,同
时也为将来制作安装程序极大得减轻了负担.
*/
二. 为上面的程序制作安装程序
首先,我想阐明自己的一些观点:
[1]. 安装程序要做得尽可能精练,最小化.多余的文件一个都不
要.
[2]. 安装时要尽量不伤到用户系统中已有的软件,设置.
[3]. 反安装时尽量要卸的干净,不能伤及别的软件.
上面我多次说要"尽量","尽可能",就是说并不绝对.试想你能让
IE4和IE5共存于
同一台机器中吗?不可能!!同样,Delphi3,4,5也很难共存...
在硬盘容量巨增的今天,有时浪费一点没什么,换来的是系统的清
洁,不混乱...
因此我强烈建议:能放在当前目录下的文件就不放在别处("当前目
录"指可执行文
件所在的目录;"别处"指C:/Windows,C:/Windows/system....)!
具体安装说明: (以C++Builder5为例,Delphi5应该是一模一样,其
它版本有少许不
同,但绝大多数一样)
1. C++Builder5绝对必需的文件
BORLNDMM.DLL CC3250MT.DLL VCL50.BPL
2. BDE绝对必需的文件 (对于中文软件来说)
IDAPI32.DLL BLW32.DLL IDR20009.DLL FAREAST.BTL CHARSET.
CVB
VCLBDE50.BPL VCLDB50.BPL BANTAM.DLL (USA.BTL似乎可有可
无)
3. ACCESS97 (用BDE连接)
IDDA3532.DLL EUROPE.BTL ODBC32.dll ODBCINT.dll
[注册表] (就是说要注册下面的两个地方,跟你机器上的一样就
可以)
HKEY_LOCAL_MACHINE/Software/Borland/Database
Engine/Settings/DRIVERS/MSACCESS
HKEY_LOCAL_MACHINE/Software/Borland/Database
Engine/Settings/SYSTEM
以上文件均放在安装目录下.