Windows服务使用Oracle 32位客户端而不是64位

时间:2017-06-20 09:10:50

标签: windows oracle service 32bit-64bit

安装的只是Oracle Database 64bit(12.1.0)
一切都很好,我的程序(App1)(编译为"任何CPU")运行并可以连接(gui和作为Windows服务)到任何Oracle数据库。程序和Windows服务以64位运行。

由于其他程序(App2),我安装了Oracle Client 32bit(12.1.0)。这个程序运行,一切都很好(32位) 如果我通过gui(仍然是64位)连接到Oracle,App1也运行良好 但是,如果我在App1上运行Windows服务,则会发生此异常

  

尝试加载Oracle客户端库会引发BadImageFormatException。在安装了32位Oracle客户端>组件的64位模式下运行时,会出现此问题。   Es wurde versucht,eine Datei mit einem falschen格式zu laden。

我不明白为什么会发生此异常!有人有想法吗?

我在这里试了一下,没有成功:Installing Oracle 32-bit Client on Windows Server Already Running 64-bit Oracle Database Server

在另一台机器上,我首先安装了Oracle客户端,然后安装了数据库。令人惊讶的是,如果我运行Windows服务也不例外!

Windows服务必须使用哪个oracle版本定义(路径或者什么)?

目前,我的应用中无法实现oracle dll。

路径值:

C:\Users\test>dir /al %windir%\System32

 Verzeichnis von C:\Windows\System32

20.06.2017  13:04    <SYMLINKD>     ora121 [C:\oracle\product\12.1.0\dbhome_1]

           0 Datei(en),              0 Bytes
           1 Verzeichnis(se), 505'220'648'960 Bytes frei

C:\Users\test>dir /al %windir%\SysWOW64

 Verzeichnis von C:\Windows\SysWOW64

20.06.2017  13:04    <SYMLINKD>     ora121 [C:\oracle\product\12.1.0\client_1]
           0 Datei(en),              0 Bytes
           1 Verzeichnis(se), 505'220'648'960 Bytes frei

0 个答案:

没有答案