用InstallShield Express做安装程序,不知道使用了DBE的Alias name怎么设置?(50分)

  • 主题发起人 主题发起人 Astimegoby
  • 开始时间 开始时间
A

Astimegoby

Unregistered / Unconfirmed
GUEST, unregistred user!
建立一数据库程序,数据库文件存放在<ProgramFilesDir>/data目录下,数据库Alias为sbd,在InstallShield Express建立安装程序时,
第二步select installshield objects for delphi我设置数据BDE Aliases为sbd,
TYPE为PARADOX,path不知怎样设置
。我都试填写了<ProgramFilesDir>/data.但在安装该软件后,其他不涉及数据库的Form能够打开操作
,只要涉及到数据库的Form就提示找不到BDE Aliases。不知怎样设置,请各位高手解决。
 
在General Options中,选中BDE
然后点setting...(第一次的时候会自动弹出)弹出一个向导,添加就ok!
 
晚了一步
 
怎么每次做完的时候都会吧Delphi的DBE给冲掉,怎么会出现这样的情况呢?
而且installshield express做出来的软件安装以后也找不到数据库的alias?这是为什么?
 
关键是PATH该怎样设置,不会是源程序的path吧。
 
就是啊。我现在也没搞明白,delphi下午都装几便了!
 
odbc 需设置
 
如果机器上已经安装了BDE,好象别名就安装不上!
 
<ProgramFilesDir>/data===>>>><installdir/data>
 
把以下代码加入到主窗体中的FormCreate事件中
var
ap:TStringList; {字符串列表变量}
answer:Integer;
strDir : string;
begin
ap:=TStringlist.Create;
Session.GetAliasNames(ap); {取得别名列表}
if (ap.IndexOf('MachineAdmin')=-1) then {判断别名是否存在}
begin
{ answer:=Application.MessageBox('别名Cntssamp不存在,现在创建吗?','BDE信息窗口',mb_OKCancel);
if answer=IDCANCEL then
begin
ap.Free; Exit;
end;
}
strDir := GetCurrentDir; //路径你自己定义
Session.AddStandardAlias('sbd',strDir,'Paradox'); //
Session.SaveConfigFile; {BDE配置文件存盘}
ap.Clear; {取得别名Cngzsamp中的所有表格名称列表}
end ;
ap.free; {释放变量ap}
 
white0212说的对,不过应该是这样:
<ProgramFilesDir>/data 改为 <installdir>/data

 
用BDE很麻烦,主要是做出的安装程序很大,因为他带了整个BDE。
 
为什么不用ado呢?
 
终于解决了,不过一个小程序只有1.5M左右,打包以后有5M多,
而且只选择了所需要数据库驱动程序,这确实大了一点,
不知道大家做的怎么样? 谢谢大家的意见。








 
还有一个问题,假如你开发了两套系统,而且都带BDE,如果把这两个系统安装在一个机子里,
就会使先安装的那个系统使用的别名被冲掉,而后安装的系统则可以正常使用。
BDE确实有其自身的弱点,以后还是用ADO好了。
 
to 王子洪:我这边没出现这样的情况,我也装了两个程序都带DBE实验了一下,感觉没问题。
不知道你以前出现的情况是什么样子的?
 
to Astimegoby:我在多个机子上做过试验,无一例外全都是这种情况。似乎机子里被装上了两个BDE,
这是一两年前的事情了,用D4开发,是不是这个原因呢?
 
与你BDE里设置的一样的名称就行了
 
[red][/red]to Astimegoby: 兄台,告诉我path怎么设置的,多谢
 
其实上面也提到,就是在设置dbe的alias时,路径为installdir/data
当然你的数据必须放在data目录底下
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部