Oracle EXE应用程序在开发人员PC上运行,但在其他用户的PC上运行。为什么呢?

时间:2016-03-10 11:14:15

标签: c# vb.net oracle dll oracle11g

我正在开发一个连接到Oracle DB的Windows应用程序。

我正在开发应用程序的机器上安装了Oracle 6i,SQLPlus和Toad通过命令或图形界面访问Oracle。 我工作场所的所有其他计算机都采用相同的设置。

唯一的区别是我的电脑有Visual Studio和Oracle 10g ODP.Net库,可以使用Visual Studio开发Oracle应用程序。

我确保将Oracle.DataAccess.dll文件与EXE一起包含在同一路径中,以减少对默认路径的依赖等。

完成的EXE文件在我的计算机上按预期运行,但每当我将其发布到其他计算机时,都会收到以下错误消息:

The type intializer for 'Oracle.DataAccess.Client.OracleConnection' threw an exception.

我尝试将Oracle.DataAccess.dll的版本从2.111.6.20更改为10.2.0.100。 再一次,它在我的电脑上完美运行,但在其他电脑上给出了以下例外:

Unable to load DLL 'OraOps10.dll': the specified module could not be found.

我从我的电脑上复制了上述文件并将其包含在EXE的已发布文件夹中,但出现了相同的错误消息,好像它对.Net应用程序不可见。

所有计算机都有Windows 7,所有计算机都是32位。

有没有办法让应用程序连接到Oracle,无论计算机上本地安装的库或Oracle版本是什么? (无论是否检测到Oracle 6i或10g安装,Toad的工作方式相同)?

我无法在所有计算机上安装Oracle 10g ODP.Net库。

0 个答案:

没有答案