delphi实现动态创建别名2008-02-02对于BDE会话期对象来说,BDE别名特别重要,许多方法都需要传递一个数据库的别名作为参数。TSession提供了管理BDE别名的功能。但是作者往往等到要发布程序时才发现,你的程序由于找不到别名而无法运行,必须在一台已经装了BDE管理程序的机上才能用,你一定非常失望。不要紧,只要在程序中加入以下语句,你的程序就又可以执行。AddAlias用于为Paradox、dBase或文本创建别名,不需要连接参数,只需指定一个路径和默认的驱动程序。AddStandardAlias函数则需要传递三个参数,Name参数用于指定名称,Driver参数用于指定SQL Links驱动程序,List参数用于指定连接参数。procedure TForm1.FormCreate(Sender: TObject);
begin
with Session do
begin
ConfigMode := cmSession;
try
AddStandardAlias(WorkMen, ExtractFilePath(ParamStr(0)), PARADOX);
finally
ConfigMode := cmAll;
end;
end;
end;
上面的是单机版的创建别名方法,还有创建SQL服务器别名的方法procedure TForm1.FormCreate(Sender: TObject);
var MyList: TStringList;
begin
MyList := TStringList.Create;
try
with MyList do
begin
Add(SERVER NAME=IB_SERVER:/PATH/DATABASE.GDB);
Add(USER NAME=MYNAME);
end;
Session1.AddAlias(WorkMen, INTRBASE, MyList);
finally
MyList.Free;
end;
end;
要说明的是,调用AddStandardAlias或AddAlias函数创建的别名只存在于内存中,程序关闭后就没有了,要把别名永远的保存到BDE配置文件中,请调用SaveConfigFile函数来保存到设置文件中。