如何覆盖fireDAC或DBExpress vendorLib

时间:2017-06-08 19:25:41

标签: delphi firedac dbexpress

RadStudio Berlin(德尔福)

我的笔记本电脑安装了odbc驱动程序并指向笔记本电脑上的VM IP。

当我连接到客户数据时,我经常需要更改vendorlib路径以指向位于odbc驱动程序dll的网络路径。

对于DBExpress,我尝试过:

scn1.DriverName:='odbc';
scn1.VendorLib:='\\server\folder\dbodbc11.dll';

并设置params,如:

ConnectionString=DRIVER={SQL Anywhere 11};DBN=PSI;ENG=PSI;ASTOP=NO;INT=NO;... 

如上所述覆盖vendorlib不会使用我设置的路径中的驱动程序,而是使用与我的笔记本电脑注册表中设置的DRIVER = {SQL Anywhere 11}相关联的路径中的驱动程序。

如果我在客户站点,那些存在这些驱动程序的虚拟机没有运行,因此连接失败。

如果我的笔记本电脑上没有与DRIVER参数相关联的驱动程序,那么带有完整路径的vendorlib可以很好地工作。

我似乎无法弄清楚如何告诉DBExpress忽略注册表中定义的驱动程序路径。

FireDAC FDConnection执行相同操作(在注册表中查找驱动程序路径),但我不确定如何开始覆盖VendorLib路径。

任何建议都将不胜感激。

0 个答案:

没有答案