我正在尝试将包含 Oracle ODP.NET 库的 VS2013 项目部署到 Windows 2008 IIS 服务器,并收到错误“无法从程序集“Oracle.ManagedDataAccess,版本 = 4.121”加载类型“OracleInternal.Common.ConfigBaseClass”。 2.0.'”从我在网上找到的内容来看,这是由项目的 ODP 与 GAC 中具有 ODP 的服务器之间的冲突引起的。然后是从 GAC 中删除 ODP 的说明。服务器上的 GAC 中有 Oracle DLL。我们 99% 肯定 DLL 是在不久前尝试在该机器上设置 Oracle 时在 GAC 中结束的,因为该服务器上的其他项目不应该使用 Oracle。因此,我们应该安全地将其从 GAC 中删除。
但是 gacutil.exe 只在 Visual Studio 中可用,我们不允许将 Visual Studio 安装到服务器上。
那么我们如何在服务器上没有 gacutil.exe 的情况下从 GAC 卸载 Oracle DLL?我们可以从目录中删除它们吗?或者我们是否需要将 gacutil.exe 从我的工作站复制到服务器才能执行此操作?还是有另一种方法? (最好不涉及注册表编辑)
任何建议表示赞赏,谢谢。
最佳答案
如果您具有管理员权限,您应该可以通过使用 Windows 界面来执行此操作,如下所示。
如果您无法通过上述方法卸载 dll,则可以通过打开运行命令并输入下面的路径并按 Enter 来访问 GAC 文件夹,而无需特殊 View 。
C:\Windows\assembly\GAC_MSIL
这将允许您作为普通文件夹与 GAC 中的所有文件进行交互。
关于.net - 如何从服务器 GAC 中删除 .NET 程序集 DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33355114/