关于BDE别名

tim 2000-01-13 08:40:00
兄弟的一个程序(CBuilder程序)做好后,在制作安装盘(用InstallShield)时遇到点麻烦:
生成的BDE别名参数无法保存,比如在生成别名tdata时指定如下参数:
DATABASE NAME=books
SQLQRYMODE=SERVER
USERNAME=tim
安装后发现tdata的参数并未生成(为空)
还请各位帮忙。
另外,还试过在database组件的OnLogin事件中将参数写入,也未成功,烦请一起解释一下。
...全文
197 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Nico 2000-01-14
  • 打赏
  • 举报
回复
其实万一不行,你可以在程序第一次运行的时候用TSession.AddAlias增加一个别名.
tiger 2000-01-14
  • 打赏
  • 举报
回复
installshield里确实没有保存参数, 但别名是有的.
所以安装完之后, 在bde中手工加上.
FormCreate时
Database1.Close;
Database1.Params.Clear;
Session.GetAliasParams('tdata', Database1.Params);
tim 2000-01-14
  • 打赏
  • 举报
回复
多谢kxy大侠,现已搞定
kxy 2000-01-14
  • 打赏
  • 举报
回复
1)用户是不需要手工改BDE别名参数.
使用TDataBase控件,双击DataBase,
name 写入你的别名. // 别名你编程时写好.
Database1.Params[0] := 'Path='+数据的路径.
数据的路径,安装在哪里你是知道的,如 执行文件的下面等.
用户是不要手工改的.
2)请看http://www.midatech.com/csdn/expert/TopicView.asp?id=660

tim 2000-01-14
  • 打赏
  • 举报
回复
感谢三位的答复,三位说的都对,其实现在就是如tiger所说手工加上参数,然后如kxy所说在FormCreat中将用户名和密码写入:
Database1->Params->Add("USER NAME=tim");
Database1->Params->Add("PASSWORD=xxx");
...
但是:
1、我不希望用户在安装完成后手工修改BDE别名参数,
2、有的参数需在运行时刻才能确定,如SERVER NAME,因为SQL SERVER主机名必须在运行时设定并可随时更改。
不知各位是否有更好的办法呢?
kxy 2000-01-13
  • 打赏
  • 举报
回复
使用TDataBase控件,双击DataBase,
name 写入你的别名.
FormCreate时//或合适的时候
Database1.Close;
Database1.Params[0] := 'Path='+数据的路径.
Database1.Open;
这样,制作安装时不用管别名的设置.
OnLogin中是处理登陆用户和密码.

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧