Microsoft KB Archive/843044

= The Microsoft .NET Managed Provider for Oracle depends on the Oramts.dll file to enlist the Oracle connections =

Article ID: 843044

Article Last Modified on 5/18/2007

-

APPLIES TO


 * Microsoft .NET Framework 1.1

-



INTRODUCTION
The Oramts.dll file is used when you try to use Microsoft Transaction Server (MTS) in a distributed environment. The .NET Framework Data Provider for Oracle (System.Data.OracleClient) calls the Application Programming Interfaces (APIs) that are publicly exposed by the Oramts.dll file. The Oramts.dll file is only available in Oracle client connectivity software. To install it on your computer, you must explicitly select the Oracle Services for Microsoft Transaction Server component during the installation of Oracle client connectivity software.



MORE INFORMATION
The Oramts.dll file exposes the public APIs that enlist the Oracle connections that are involved in transactions that are started by Microsoft Distributed Transaction Coordinator (MSDTC). The System.Data.OracleClient assembly calls these APIs when it runs in a transacted environment.

Earlier versions of the System.Data.OracleClient assembly did not support distributed transactions. Therefore, this dependency does not exist before the System.Data.OracleClient assembly version 1.1.

The System.Data.OracleClient assembly uses the Oramts.dll file when you perform distributed transaction activities. The System.Data.OracleClient assembly does not load when you try to perform nontransacted activities, or when you use local transactions. If you do not include this component during the installation of Oracle client connectivity software, and you try to use distributed transactions with System.Data.OracleClient, you may receive the following error message:

System.Data.OracleClient: Unable to load DLL (oramts.dll)

The Oramts.dll file is installed with the Oracle client connectivity components. It is not distributed with any Microsoft software. The Oramts.dll file is not included as a default installation when you install the Oracle client connectivity software. To install this component you must click to select the Oracle Services for Microsoft Transaction Server check box when you install the Oracle client connectivity software. For more information about these components, visit the following Oracle Web site:

http://www.oracle.com/technology/tech/windows/ora_mts/index.html

The Microsoft ODBC Driver for Oracle and the Microsoft OLE DB Provider for Oracle depend on the OracleXaLib, OracleSqlLib, or OracleOciLib registry entries for distributed transaction support. However, the Microsoft .NET Framework 1.1 version of System.Data.OracleClient does not depend on the OracleXaLib, OracleSqlLib, or OracleOciLib registry entries. These entries are not required to participate in the distributed transactions with the .NET Managed Provider for Oracle. For more information about these entries, visit the following Microsoft Web site:

http://support.microsoft.com/default.aspx

