无法加载DLL“oramts.dll”: 找不到指定的模块

简介:   无法加载 DLL“oramts.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。 这个错误, 解决方法:   Oramts.dll 文件公开登记 Oracle 连接所涉及到在通过 Microsoft 分布式事务处理协调器 (MSDTC) 启动的事务中的公共 API。

  无法加载 DLL“oramts.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。 这个错误,
解决方法:
  Oramts.dll 文件公开登记 Oracle 连接所涉及到在通过 Microsoft 分布式事务处理协调器 (MSDTC) 启动的事务中的公共 API。 在事务处理环境中运行时, System.Data.OracleClient 程序集调用这些 API。
  System.Data.OracleClient 程序集的早期版本不支持分布式的事务。 因此,该依赖项不存在                 System.Data.OracleClient 程序集版本 1.1 之前。
  当您执行分布式的事务活动时 System.Data.OracleClient 程序集使用 Oramts.dll 文件。 当您尝试执行 nontransacted 活动时, 或者当您使用本地事务时不加载 System.Data.OracleClient 程序集。 如果 Oracle 客户端连接软件,在安装过程中不包括此组件,您尝试使用分布式的事务与 System.Data.OracleClient ,您可能会收到以下错误信息: System.Data.OracleClient: Unable to load DLL (oramts.dll) 与 Oracle 客户端连接组件安装在 Oramts.dll 文件。 它不被分发使用任何 Microsoft 软件。 Oramts.dll 文件不是作为默认安装包含在安装 Oracle 客户端连接软件时。 若要安装此组件必须单击以选中 Oracle Services for Microsoft Transaction Server 在安装 Oracle 客户端连接软件时复选框。 有关这些组件的信息,请访问下面的 Oracle Web 站点:
http://www.oracle.com/technology/tech/windows/ora_mts/index.html (http://www.oracle.com/technology/tech/windows/ora_mts/index.html)
  先到Oracle官方网站上面下载ODAC92070.exe因为这是为了支持分布式事务的一个数据库连接包,Oracle跟微软官方网站上有说明,Oracle不支持单独将oramts.dll分布的方式,就是说这个包不能单独下载,只能下载这个安装,
安装完成后, 再运行代码,仍就事务出错,报的错误一样,查看环境变量中的path,并在Oracle92Home目录,查找oramts.dll已经存在, 后来在一网站(英文的)不记得了,说Oramts.dll这个dll是因为在debug模式下面编译的,所以不能正常使用 通过DependencyWalker查看依赖项,发现少了msvcrtd.dll,这个在装上Vs6.0,VC++的机器上有,这是一个VC的编译器文件, 然后下载一个msvcrtd.dll拷贝到C:\windows\System32下面,再试分布式事务,成功 希望这编文章能给刚开始使用VS2005+Oracle数据库的一些朋友一点点帮助. 当然你要是使用Oracle10g,Oracle11g相关版本,只要下载对应的Oracle Data Access Components (ODAC)数据访问组件就可解决 Oracle数据库客户端访问组件下载地址:
http://www.oracle.com/technology/software/tech/windows/odpnet/index.html

目录
相关文章
VSCode 如何设置背景图片
VSCode 如何设置背景图片
1547 1
|
机器学习/深度学习 人工智能 大数据
【重磅】文娱技术喜提多篇ACM MM论文
2021ACM MM(ACM International Conference on Multimedia),阿里巴巴文娱技术共4篇论文被收录。研究成果分别是:视频修复、目标检测器、视频质量评估、情感计算 技术领域。
1283 0
【重磅】文娱技术喜提多篇ACM MM论文
|
JSON atlas 图形学
unity之spine骨骼动画使用
unity实现spine骨骼动画使用
unity之spine骨骼动画使用
|
弹性计算 测试技术
阿里云服务器网络收发包PPS是什么意思?5万PPS/10万/20万/80万/100万PPS
阿里云服务器网络收发包PPS是衡量云服务器网络质量的一项重要指标,单位是PPS,PPS是指Packets Per Second,每秒发包数量
7625 0
阿里云服务器网络收发包PPS是什么意思?5万PPS/10万/20万/80万/100万PPS
|
11月前
|
安全 算法 Java
Java“SSLException”错误解决
Java“SSLException”错误通常发生在SSL/TLS连接过程中,可能是由于证书问题、握手失败或加密套件不匹配等原因引起。解决方法包括检查服务器证书、配置信任库、确保JDK版本兼容等。
1837 4
|
Web App开发 安全 Windows
解决:对COM 组件的调用返回了错误 HRESULT E_FAIL
  调用SHDOCVW(web浏览器) COM组件的时候,返回了错误 HRESULT E_FAIL。总结如下:     1. 在控制面板--->管理工具--->服务 中,开启Distributed Transaction Coordinator 服务。
7031 0
|
Java C# 索引
C#之 十九 使用WinForm控件
C#之 十九 使用WinForm控件
357 0
在Linux中,如何创建、移动和删除文件和文件夹?
在Linux中,如何创建、移动和删除文件和文件夹?
|
Java Spring 容器
@PostConstruct注解学习,最详细的分享教程
@PostConstruct注解学习,最详细的分享教程
364 0
|
机器学习/深度学习 算法 PyTorch
深入理解PyTorch自动微分:反向传播原理与实现
【4月更文挑战第17天】本文深入解析PyTorch的自动微分机制,重点讨论反向传播的原理和实现。反向传播利用链式法则计算神经网络的梯度,包括前向传播、梯度计算、反向传播及参数更新。PyTorch通过`autograd`模块实现自动微分,使用`Tensor`和计算图记录操作历史以自动计算梯度。通过示例展示了如何在PyTorch中创建张量、定义计算过程及求梯度。掌握这些有助于提升深度学习模型的训练效率。