Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi Berlin 64位编译器中的DBX错误:无法正确初始化驱动程序。连接到Oracle 12c DB服务器时_Delphi_Delphi 10.1 Berlin - Fatal编程技术网

Delphi Berlin 64位编译器中的DBX错误:无法正确初始化驱动程序。连接到Oracle 12c DB服务器时

Delphi Berlin 64位编译器中的DBX错误:无法正确初始化驱动程序。连接到Oracle 12c DB服务器时,delphi,delphi-10.1-berlin,Delphi,Delphi 10.1 Berlin,我的应用程序中出现了下面的stopper错误。我使用了Delphi柏林64位编译器。并且还将dbxora.dll用作embarcadero的dbxpress驱动程序默认值。使用TSQLConnection组件连接到Oracle 12c DB服务器 DBX错误:无法正确初始化驱动程序。客户端库可能缺少或安装不正确的错误版本,或者系统路径中缺少驱动程序 如何解决此问题?DB Express驱动程序本身并不总是足以连接到某些数据源。对于某些数据源(实际上大多数数据源),您还需要该数据源的客户机驱动程序

我的应用程序中出现了下面的stopper错误。我使用了Delphi柏林64位编译器。并且还将
dbxora.dll
用作embarcadero的dbxpress驱动程序默认值。使用TSQLConnection组件连接到Oracle 12c DB服务器

DBX错误:无法正确初始化驱动程序。客户端库可能缺少或安装不正确的错误版本,或者系统路径中缺少驱动程序


如何解决此问题?

DB Express驱动程序本身并不总是足以连接到某些数据源。对于某些数据源(实际上大多数数据源),您还需要该数据源的客户机驱动程序,通常由数据库供应商自己提供

Oracle就是其中之一

除了DB Express驱动程序之外,您还需要安装。您还需要确保安装了正确的版本

i、 e.在您的情况下,由于您表示要构建64位应用程序,因此您将需要64位Oracle客户端


如果您(或您的预期用户)已经安装了32位Oracle客户端,那么您可以考虑将应用程序构建为32位应用程序,除非您绝对需要64位的能力。

< P>强> DB Express < /St>>驱动程序并不总是足以连接到某些数据源。对于某些数据源(实际上大多数数据源),您还需要该数据源的客户机驱动程序,通常由数据库供应商自己提供

Oracle就是其中之一

除了DB Express驱动程序之外,您还需要安装。您还需要确保安装了正确的版本

i、 e.在您的情况下,由于您表示要构建64位应用程序,因此您将需要64位Oracle客户端


如果您(或您的预期用户)已经安装了32位Oracle客户端,那么您可以考虑将应用程序构建为32位应用程序,除非您绝对需要64位的能力。< /P>是否安装了第三方安装程序以及应用程序?是否安装了64位Oracle客户端?@我没有。@Ken White-是的,我们有。64位Oracle 12c已经安装。您是否在应用程序中安装了第三方安装程序?您是否安装了64位Oracle客户端?@lrb-不,我没有。@Ken White-是的,我们有。64位Oracle 12c已经安装。是的,确实如此。我在这个平台上安装了64位Oracle 12c客户端。所有的环境都已经64位了。这个问题仍然在出现。仅供参考,我在本例中使用了OCI访问。您确定正在为Windows x64目标生成(并运行)EXE吗?如果你是,那么我要检查的下一件事是它是否在路径上,根据需要。当然,首要原则是:你能在同一台机器上使用其他64位应用程序成功地建立Oracle连接吗?如果你安装64位客户端软件并用32位编译Delphi项目,这也会发生。sandman是的,当然。32位应用程序使用32位DLL,64位应用程序使用64位DLL。如果两人之间没有恶作剧,两人都不能使用对方。e、 g例如,对于打印机驱动程序,Windows提供32位和64位应用程序驱动程序,并负责将打印机调用映射到底层64位打印机驱动程序。但对于专有接口,如数据库驱动程序等,则由供应商提供这种映射(称为“thunking”),如果它们不提供映射,则应用程序的“比特度”必须与驱动程序的比特度相匹配。@sandman可能不会,因为不需要这样做。当然,除非64位操作系统完全取消了对32位进程的支持(看看你的苹果),否则决定是构建32位还是64位(64位并不都是重要的)的关键在于某个特定的应用程序是否真的需要它。这主要是指服务器应用程序,而不是桌面/客户端。在操作系统中是否继续支持32位,归根结底是权衡继续支持的成本/复杂性与应用程序/用户/开发人员的成本/复杂性,这些应用程序/用户/开发人员的不便对他们没有直接的好处。是的,的确如此。我在这个平台上安装了64位Oracle 12c客户端。所有的环境都已经64位了。这个问题仍然在出现。仅供参考,我在本例中使用了OCI访问。您确定正在为Windows x64目标生成(并运行)EXE吗?如果你是,那么我要检查的下一件事是它是否在路径上,根据需要。当然,首要原则是:你能在同一台机器上使用其他64位应用程序成功地建立Oracle连接吗?如果你安装64位客户端软件并用32位编译Delphi项目,这也会发生。sandman是的,当然。32位应用程序使用32位DLL,64位应用程序使用64位DLL。如果两人之间没有恶作剧,两人都不能使用对方。e、 g例如,对于打印机驱动程序,Windows提供32位和64位应用程序驱动程序,并负责将打印机调用映射到底层64位打印机驱动程序。但对于专有接口,如数据库驱动程序等,则由供应商提供这种映射(称为“thunking”),如果它们不提供映射,则应用程序的“比特度”必须与驱动程序的比特度相匹配。@sandman可能不会,因为不需要这样做。当然,除非64位操作系统完全取消了对32位进程的支持(看看你的苹果),否则决定是构建32位还是64位(64位并不都是重要的)的关键在于某个特定的应用程序是否真的需要它。这主要是指服务器应用程序,而不是桌面/客户端。在操作系统中是否继续支持32位,归根结底是权衡继续支持的成本/复杂性