delphi编程实现动态创建别名

2016-02-19 17:47 0 1 收藏

清醒时做事,糊涂时读书,大怒时睡觉,无聊时关注图老师为大家准备的精彩内容。下面为大家推荐delphi编程实现动态创建别名,无聊中的都看过来。

【 tulaoshi.com - 编程语言 】

  对于BDE会话期对象来说,BDE别名特别重要,许多方法都需要传递一个数据库的别名作为参数。TSession提供了管理BDE别名的功能。

  但是作者往往等到要发布程序时才发现,你的程序由于找不到别名而无法运行,必须在一台已经装了BDE管理程序的机上才能用,你一定非常失望。不要紧,只要在程序中加入以下语句,你的程序就又可以执行。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  AddAlias用于为Paradox、dBase或文本创建别名,不需要连接参数,只需指定一个路径和默认的驱动程序。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  AddStandardAlias函数则需要传递三个参数,Name参数用于指定名称,Driver参数用于指定SQL Links驱动程序,List参数用于指定连接参数。

  

procedure TForm1.FormCreate(Sender: TObject);beginwith Session dobeginConfigMode := cmSession;tryAddStandardAlias(WorkMen, ExtractFilePath(ParamStr(0)), PARADOX);finallyConfigMode := cmAll;end;end;end; 

  上面的是单机版的创建别名方法,还有创建SQL服务器别名的方法

  

procedure TForm1.FormCreate(Sender: TObject);var MyList: TStringList;beginMyList := TStringList.Create;trywith MyList dobeginAdd(SERVER NAME=IB_SERVER:/PATH/DATABASE.GDB);Add(USER NAME=MYNAME);end;Session1.AddAlias(WorkMen, INTRBASE, MyList);finallyMyList.Free;end;end;

  要说明的是,调用AddStandardAlias或AddAlias函数创建的别名只存在于内存中,程序关闭后就没有了,要把别名永远的保存到BDE配置文件中,请调用SaveConfigFile函数来保存到设置文件中。

来源:https://www.tulaoshi.com/n/20160219/1616042.html

延伸阅读
日期函数Now()、Date()、Time()大家都用得多了,这些函数是读取系统日期时间的。可是遇到需要改变操作系统的时间时,他们就一点办法也没有,而Delphi4又没有提供相关的函数,所以只好求助于API函数SetSystemTime(SystemTime);无奈他要求的变量SystemTime太古怪了,属于TSystemTime,需要经过转换才可以得到,所以举例如下: 1、定义变...
拖放(DragDrop)是Windows提供的一种快捷的操作方式。作为基于Windows的开发工具,Delphi同样支持拖放操作,而且开发应用系统的拖放功能十分方便,真正体现了Delphi的强大功能和方便性。 Delphi提供的所有控件(Control,即能获得输入焦点的部件)都支持拖放操作,并有相应的拖放属性、拖放事件和拖放方法。下面我们先介绍控件的拖放支持...
标签: Delphi
  拖放 (DragDrop)是 Windows 提供的一种快捷的操作方式。作为基于 Windows 的开发工具, Delphi同样支持拖放操作,而且开发应用系统的拖放功能十分方便,真正体现了 Delphi 的强大功能和方便性。 Delphi提供的所有控件 (Control ,即能获得输入焦点的部件 ) 都支持拖放操作,并有相应的拖放属性、拖放事件和拖放方法。下面我...
Printers是专门用来控制打印机的,可是在没有安装打印机时,却会提示I/O错误,所以必须有一个检测是否存在打印机的方法,我试过很多方法,可是I/O错误总是比我的判断早出现,所以采用以下的烂招来检测打印机。首先在uses增加Printers,再准备一个列表框ComboBox1,其属性Visible设为FALSE,然后在打印之前执行下列语句,那么就可以检测到是...
一、使用的背景(也不能算是使用的背景,最多只能算是一个在什么条件下面我想到了使用动态代理实现AOP的拦截功能):因为在项目中程序的结构是使用SOAP调用JNI,因此在SOAP服务端里面没有任何实现代码,仅仅是new一个JNI的对象,然后调用JNI对应的方法。但是在调用JNI方法之前需要对传进JNI的JavaBean进行初始化,而且还需要记录日志。而SOAP服...

经验教程

248

收藏

24
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部