难题(188分)

  • 主题发起人 主题发起人 暴雨
  • 开始时间 开始时间

暴雨

Unregistered / Unconfirmed
GUEST, unregistred user!
[?]各位老兄,我最近学delphi,试做一个车辆资料的数据库。
使用了一个database,两个query,两个datasourse控件,
数据库用ms access2000建立,在控制面板的odbc中设置名为bus的数据源,
database中的各个属性:
name: myprogram
alisa name: bus
然后parameter overrides中选defaults显示:
DATABASE NAME=
USER NAME=
ODBC DSN=bus
OPEN MODE=READ/WRITE
SCHEMA CACHE SIZE=8
SQLQRYMODE=
LANGDRIVER=
SQLPASSTHRU MODE=SHARED AUTOCOMMIT
SCHEMA CACHE TIME=-1
MAX ROWS=-1
BATCH COUNT=200
ENABLE SCHEMA CACHE=FALSE
SCHEMA CACHE DIR=
ENABLE BCD=FALSE
ROWSET SIZE=20
BLOBS TO CACHE=64
PASSWORD=
在自己电脑上通过调试,(最初在delphi 6.0 + win2000下编制)。
见在win98下不能运行,于是在win98下也装了delphi 6.0,打开工程文件,重新
编译,生成可执行文件,也同样通过了调试。
但是在别人的电脑上却不能通过,运行后显示:
exception EDBEngine Error in module project1.exe at 009FC32.
An error occurred while attempting to initialize the borland
Database Engine (error $2109).
是不是我的database设置有问题呢?
 
在别人的机子上没有BDE数据库驱动,自然是不能运行了。你应当用Delphi安装盘自带的
installShield制作安装文件,在里面加入BDE数据驱动所需的文件。
 
BDE可能有问题
你确定BDE安装正确吗?
使用SQL Explorer访问bus这个DSN,看看能否连接上
 
将DabaSase连接到你的别名,将prompt属性设为False,
在DataBase的parameter overrides中只写:
USER NAME=你的用户名
PASSWORD=你的口令
将其它语句删除就可以了
 
看来主要是没装BDE,
用Delphi6盘装一下BDE,试试。
如果你改用ADO,在Win98上就不需要BDE。
 
bde的問題﹗在那台電腦上裝一個delphi6可解決問題﹗
 
感谢各位,对其中几位的回复还有一些疑惑,再次请教:

HunterTeam回复:
在别人的机子上没有BDE数据库驱动,自然是不能运行了。你应当用Delphi安装盘自带的installShield制作安装文件,在里面加入BDE数据驱动所需的文件。
-------到底要哪些驱动,怎么知道的呢?还有这些驱动是加在和主程序同一个目录下吗?

twos回复:
BDE可能有问题
你确定BDE安装正确吗?
使用SQL Explorer访问bus这个DSN,看看能否连接上
------我的装了bde.在控制面板中还有bde administrator一项.
用sql explorer访问bus,输入sql语句,例如"select * from bus",可以实现的。

svw0506回复:
将DabaSase连接到你的别名,将prompt属性设为False,
在DataBase的parameter overrides中只写:
USER NAME=你的用户名
PASSWORD=你的口令
将其它语句删除就可以了
------这有什么用处呢?顺便问一下,如果access数据库的密码改了,还能运行吗?

谢谢了!
 
有一个文件,大概是这样的名称 bdeinstall.dll
用regsvr32 xxx.dll注册一下就可以,它会自己展开,大约几个MB呢。
 
你出现这个问题主要还是BDE驱动没有安装,做数据库程序你最好用InstallShield做安装盘
将BDE及别名配置也打包进安装程序,这样用这个安装盘到别的电脑安装就没问题了,另外
正如我上面说的,你的DataBase里面的内容太多了,只写user name 和password就可以了,
其它的选项Alias就可以配置了。
当然如果你改了数据库的口令,就得更改这部分,然后重新编译程序,其实你也可以写程序
控制user name 和password这两项。
InstallShield使用挺简单的,是向导式的,你看一下帮助,应该不成问题。
 
经过淘汰法发现bde目录下动态连接库bantam.dll idapi32.dll idodbc32.dll idr20009.dll这四个不能少,如果缺少则出现上述错误。到底要怎么打包才能
把驱动装入呢?
 
有专门的打包工具啊,会把你需要的dll全部搞定的,
delphi的installshield limited就可以,
 
多人接受答案了。
 
后退
顶部