The 'MSDAORA.1' provider is not registered on the local machine

40,059

Solution 1

I figured out the solutions for this. The problem stemmed from running the machine on a 64bit machine. To change that in VS, open up the properties page of the solution and in the build tab change the targeted platform to x86. And that did the trick.

http://lostechies.com/gabrielschenker/2009/10/21/force-net-application-to-run-in-32bit-process-on-64bit-os/

Thanks for your help Yuriy.

Solution 2

Using ORAOLEDB.ORACLE rather than MSDAORA fixed the same issue for me - changing the platform target from 'Any CPU' to 'X86' caused errors within my project in Visual Studio.

See answer here

Solution 3

I had the same issue, but I used another solution because my application is running in IIS.

In the advanced settings of the application pool I changed the value for Enable 32-Bit Applications to true.

Share:
40,059
Eric
Author by

Eric

Updated on July 09, 2022

Comments

  • Eric
    Eric almost 2 years

    I have an application that connects to a DB, extracts info, creates a excel file, and then drops the file/emails X people the file.

    The application was created in Visual Studios using .NET 2.0 Framework (Windows Form App). It was run on a 32 bit server. But it recently was moved to a 64 bit server. It is now returning with the error message " The 'MSDAORA.1' provider is not registered on the local machine."

    I believe that MSDAORA is only supported for 32-bit applications and the Application Pool the app runs under in IIS is not enabled for 32-bit applications.

    How would I fix this issue, is there something I can change in IIS? Or is it a code change?