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
若有问题可按下列步骤解决:
1. 检查安装时有没有装 Oracle Services for Microsoft Transaction Server 
2.到bin目录如(oracle/product/10.1.0/db_1/bin),找找有没有oramts.dll,如果没有的话就证明没有安装上面的服务,可以考虑重新安装客户端。 
3.如果是10g的话,看看有没有oramts10.dll,有的话再复制一份,改名为oramts.dll。
4.如果安装完客户端提示连接字符串错误!到oracle/product/10.1.0/Client_1/network/ADMIN目录下,找配置文件tnsnames.ora,有的话打开看里面的连接字符串是怎么写的,自己写没写错,没有的话可以手动添加此文件,示例代码如下: ORCL =  (DESCRIPTION =    (ADDRESS_LIST =      (ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521))    )    (CONNECT_DATA =      (SERVICE_NAME = orcl10)    )  )   
5.可以通过客户端工具Net Configuration Assistant 来重新配置上述连接。

"无法加载 DLL“oramts.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。" —— 的解决方法的更多相关文章

  1. 关于找不到指定的模块,异常来自HRESULT:0x8007007E的解决方法

    上午从公司前辈那里拷贝到的ASP.NET代码,在自己机器上部署的时候发现问题,直接报错,找不到指定的模块,异常来自HRESULT:0x8007007E.并且一大堆警告. 在网上百度很多解决方法,归纳如 ...

  2. 无法加载 DLL“SQLite.Interop.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)

    SQLite部署-无法加载 DLL“SQLite.Interop.dll”: 找不到指定的模块 近期刚使用SQLite,主要引用的是System.Data.SQLite.dll这个dll,在部署到测试 ...

  3. c# 无法加载 DLL xxxxxxxx找不到指定的模块。 (异常来自HRESULT:0x8007007E)。的一个解决方法

    最近在做一个程序,想把某些功能用C++写成DLL供C#调用.但是无法如何都无法调用,提示"无法加载 DLL xxxxxxxx找不到指定的模块. (异常来自HRESULT:0x8007007E ...

  4. System.DllNotFoundException:“无法加载 DLL“librfc32.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。”

    System.DllNotFoundException:“无法加载 DLL“librfc32.dll”: 找不到指定的模块. (异常来自 HRESULT:0x8007007E).” 1.下载文件lib ...

  5. 无法加载 DLL“ParkCOM.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E) 终结者

    C#调用利用C++写的dll 常遇到的情况是无法加载DLL"***.dll":找不到指定的模块(异常来自HRESULT:0x8007007E)终极解决方法如下: 1.产生原因 可能 ...

  6. c# 无法加载DLL:找不到指定的模块(异常来自HRESULT:0X8007007E)

    c# 无法加载DLL“xxxx”:找不到指定的模块(异常来自HRESULT:0X8007007E)的一个解决方法 以前的一个c#项目,今天运行的时候突然发现调用DLL时出现了下面的错误. 心中很诧异, ...

  7. win7 32位 安装opencv-python后,运行时提示 "from .cv2 import *: DLL load failed: 找不到指定的模块" 的解决办法

    安装opencv后,运行一个测试程序提示"from .cv2 import *: DLL load failed: 找不到指定的模块".于是百度一下解决办法,结果试了N多方法后也没 ...

  8. win10 anaconda安装后使用报错“Original error was: DLL load failed: 找不到指定的模块”

    报错:Original error was: DLL load failed: 找不到指定的模块. 环境变量需要添加3个 然后就okay了.

  9. kivy sdl2 - ImportError: DLL load failed: 找不到指定的模块。

    kivy version : windows:win python version:3.6 sdl2 - ImportError: DLL load failed: 找不到指定的模块. 运行以下dem ...

  10. [Eclipse+PyDev]ImportError: DLL load failed:找不到指定的模块 解决方案

    1. 环境 Eclipse 4.4.2 Python 3.5 Window 8.1 2. 问题 在代码中import numpy时,提示 " ImportError: DLL load fa ...

随机推荐

  1. 字符串编码原理--PHP数组原理与高级应用

    基础知识 1.有几种表达方式(查看手册)2.单引号和双引号的区别,双引号解析变量.\n,\t等,八进制与十六进制编码 内部存储方式 c语言中怎么表示字符串,结构体存储了字符指针和长度1.字符串可以用[ ...

  2. nginx linux 安装

    nginx linux 安装 进入http://nginx.org/en/download.html 下载 n  gcc 安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gc ...

  3. [转] Google 开源 iOS 应用测试工具:EarlGrey

    Google 开源 iOS 应用测试工具:EarlGrey oschina 发布于: 2016年02月18日 (3评) 分享到:    收藏 +53 3月19日,深圳源创会火热报名中,go>&g ...

  4. 正则表达式表示 ja.resx 所在行

    [^\n]*ja.resx[^\n]*\n?正则表达式表示 ja.resx 所在行 用ultraEdit 删除关键字所在行的下一行或是上一行,所在行保留 删除 关键字所在行 的前3行: (^.*?(\ ...

  5. Nehe OpenGL lesson 8

    lesson8 Blending: http://nehe.gamedev.net/tutorial/lessons_06__10/17010/ (也许须要特殊手段訪问) There was a re ...

  6. php中的 file_get_contents(‘php://input’)用法

    php中的 file_get_contents('php://input')用法: file_get_contents 获取php页面中input内容的值: eg: php: 页面提交了usernam ...

  7. InputStream写文件出现大量NUL

    写文件大家出现最多的是汉字知码之类的问题,今天不是乱码问题,是出现在大量空字符,用记事本打开是不可见的.如果用NodePad++打开则会显示NUL 问题分题: 刚开始以为是编码问题,试了几个编码发现问 ...

  8. Centos 7 安装 Mysql5.7(压缩包方式)

    今天装的了mysql,遇到了很多问题,好在最后一一解决了,现在记录在此,防止日后老路重走... 1.下载 当然是去官网,下一个linux下的版本,64位的 tar.gz,好吧这里贴个名字——[mysq ...

  9. mac下安装python pip、pyspider

    如果mac下没有安装wget,还需要安装wget,见http://www.cnblogs.com/cocowool/archive/2012/06/24/2560574.html 使用 pip 安装 ...

  10. Failed to read auto-increment value from storage engine

    今天在使用php artisan db:seed进行填充1000条数据时,出现如下错误Failed to read auto-increment value from storage engine 原 ...