几年前,我已经开发了一个使用System.data.oracleclient访问Oracle数据库的Windows Service应用程序(VB.NET Framework 1.1)。
由于该驱动程序给我带来了很多麻烦,因此我想引用Oracle DataProvider(Oracle.dataaccess.dll),它效果更好。
在我的电脑上,一切正常。
问题是当我尝试在服务器上发布我的应用程序时(Windows 2000)。
我无法在该服务器上安装新的Oracle数据提供商,并且有Oracle 9.0的旧安装(我的App References Oracle 9.2)。
我已将整个目录(无需安装)从我的PC复制到服务器,但我不知道如何引用Oracle数据提供商。我知道这不是做事的“干净”方法,但我没有可能安装新软件的可能性。
我已经看到,如果我在c: oracle ora92 bin文件夹中复制我的应用程序(和所有文件),则一切正常。
我想将该目录指定为我的应用程序的探测目录。我尝试了网络上发现的不同解决方案,但它们似乎都没有用。

我想在运行时或配置文件中设置一个文件夹,以便我的应用程序可以使用那里的汇编(以及所有依赖项)。

我可以将我的应用程序升级为框架2.0。

谢谢

阿尔贝托

有帮助吗?

解决方案

相反,请将Oracle组件放入应用程序的根部。甚至更好 - 将组件放入服务器上的GAC中。用于该的实用程序(gacutil)应在服务器上运行,很好。

也许这可以帮助您: C#:自定义组装目录

如果其他一切都失败了,您可以订阅AppDomain的汇编溶解事件:

组装解决

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top