Oracle.DataAccess.dll 2.112.1.0 vs 2.111.7.0

Hi,
I built a windows 7 64 bit dll application with Oracle 11g, my Oracle.DataAccess.dll version is 2.112.1.0. when I create setup package, I exclude Oracle.DataAccess.dll. When I install it on my user's machine, which have 2.111.7.0 version of Oracle.DataAccess.dll. Now it stop working.
what's the best solution:
a) install 2.112.1.0 version of Oracle.DataAccess.dll in my setup package and install it on user's machine
b) uninstall my 2.112.1.0 version of Oracle client, install 2.111.7.0 one
c) other... ?
also, should I use 64 bit Oracle 11g client?
Thank you,
Wes

wesbird wrote:
When I install it on my user's machine, which have 2.111.7.0 version of Oracle.DataAccess.dll. Now it stop working.
a) install 2.112.1.0 version of Oracle.DataAccess.dll in my setup package and install it on user's machineJust wanted to point out that if "2.111.7.0" means the user's machine has Oracle 11.1.0.7 something installed, then simply including a "2.112.1.0" dll is not enough i.e. whole 11.2 Client install is needed. Having multiple Oracle homes on a Windows pc might not work well for some apps (think dependencies/support requirements for 3rd part Oracle apps).
Perhaps ODAC Xcopy deployment package could help simplify deployment.
32-bit ODAC Xcopy version
http://www.oracle.com/technetwork/database/windows/downloads/utilsoft-087491.html
64-bit equivalent
http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html
Edited by: orafad on Aug 24, 2011 1:10 AM

Similar Messages

  • ODAC Release 4 & 5 - Oracle.DataAccess.dll 4.112.3.0

    Has anyone else noticed that ODAC Release 4 & 5 have the same AssemblyVersion 4.112.3.0?
    Oracle Data Access Components (ODAC) for Windows
    It took me a while to spot the problem.  I'm using Entity Framework 5 and hit a machine with Release 4.  It threw an completely misleading exception on load.
    System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.TypeInitializationException: The type initializer for 'Oracle.DataAccess.Client.OracleConnectionStringBuilder' threw an exception. ---> System.TypeInitializationException: The type initializer for 'Oracle.DataAccess.Client.RegAndConfigRdr' threw an exception. ---> System.Configuration.ConfigurationErrorsException: MySchema.MyPackage.MyProcedure.RefCursorMetaData.CUROUT.Column.1  is invalid
       at Oracle.DataAccess.Client.RegAndConfigRdr.AddMetadataForRefCursor(String refCursorKey, String metadataInfo, Hashtable& schemaTable)
       at Oracle.DataAccess.Client.RegAndConfigRdr.RetrieveInfoFromConfig(NameValueCollection nvc, Hashtable& schemaTable, Boolean bIsCallFromODT)
       at Oracle.DataAccess.Client.RegAndConfigRdr..cctor()
    Since ODAC Release 4 was installed, the machine had Oracle.DataAccess.dll (4.112.3.0) in GAC.  Thus, my application could not use my local copy of Oracle.DataAccess.dll (4.112.3.0) from Release 5.
    Having the same AssemblyVersion for Release 4 and 5 causes issues.  Can we get an additional release with an updated version?

    Can you elaborate on the versioning policy for ODAC?  What I'm looking for ideally is an incrementing AssemblyVersion with releases as was done previously with Oracle 11 R3, R4, R5.  For example,
    ODAC 12c Release 1
    AssemblyVersion = 4.121.1.0
    AssemblyInformationalVersionAttribute = 4.121.1.0 12c R1
    ODAC 12c Release 2
    AssemblyVersion = 4.121.2.0
    AssemblyInformationalVersionAttribute = 4.121.2.0 12c R2
    In your post https://forums.oracle.com/message/11264632#11264632 you describe best practice.
    The best practice is to install 64-bit ODP.NET following the install instructions. To make sure each application can find its correct unamanged Oracle Client DLLs, I recommend setting the DllPath setting described in Chapter 2 of the ODP.NET Dev Guide. Typically, the problem people run into with multiple ODP.NET versions on the same machine is ensuring each ODP.NET version uses its correct Oracle Client version (i.e. avoiding DLL Hell). Setting DllPath is a straightforward to ensure all your ODP.NET apps will use the right dependent Oracle Client DLLs.
    If we are to follow your recommend best practice then we must have different AssemblyVersions with each release.  Otherwise, we could load the wrong ODP.NET Oracle.DataAccess.dll from the GAC that doesn't match the unmanaged Oracle Client dlls we specified with the DllPath setting.
    If I've missed something, please let me know.

  • Oracle.DataAccess.dll v2.112.2.40 or v4.112.2.40?

    After installing 11.2.0.2.40 BETA I noticed that the odp.net bin folder contained two versions of Oracle.DataAccess.
    2.x: v2.112.2.40
    4: v4.112.2.40
    Only the version from the 2.x folder was added to the GAC.
    I'm using EF on .Net framework 4 and wanted to make sure I was using the correct assembly version. Should I be using v4.112.2.40 or is v2.112.2.40 correct?

    If you want to use EF, you should be using the 4.x version as that's the .net 4 version of the assembly. That version was GAC'd for me, is your project running in .net 4?

  • Oracle.DataAccess.dll on Windows 7 64 bit

    Hi,
    I am migrating a .Net 3.5 windows class library from WinXP 32 bit to Win7 64 bit. I use Oracle 11g 64 bit client to connect to database.
    my code works in Debug build but not in Release build. here is the error message:
    "An attempt was made to load an assembly with an incorrect format:"
    I did not complete uninstall by Oracle Deinstall, and re-install it.
    Debug build have a waring:
    "Assembly generation -- Referenced assembly 'Oracle.DataAccess.dll' targets a different processor."
    Release build still the same incorrect format error.
    here is more information:
    under C:\Windows\assembly
    Oracle.DataAccess     2.112.1.0     89b483f429c47342     AMD64
    Oracle.Web          2.112.1.0     89b483f429c47342     AMD64
    How should I fix it? should I download and install "64-bit Oracle Data Access Components (ODAC)"? What's difference between ODP.net in Oracle client and in ODAC?
    Thank you,
    Wes
    Windows 7 Pro, 64 bit, Visual Studio 2010, Oracle 11g 64 bit client

    What do you have /32BIT flag set to in the assembly? Ie, was it compiled with AnyCPU, x86, etc? You can use corflags.exe with the .net sdk to find out.
    Prior to VS2010, the default was AnyCPU which meant it ran as 64 bit on 64 bit OS, and 32 bit on 32 bit OS.
    As of VS2010, the IDE defaults to x86, which means it runs as 32 bit no matter what.
    32 bit apps need 32 bit odp/client. 64 bit apps need 64 bit odp/client.
    The error you're getting usually means you have the wrong bits (32/64) of the Oracle client installed.
    Assuming you have the wrong client bits installed, you could either
    a) make the app run as the other bits by setting/clearing the 32BIT flag (also by using corflags.exe)
    b) install the other bits of Oracle client software. a 32 bit home and a 64 bit home play rather nicely together for the most part, but you need to install them into separate homes.
    Hope it helps,
    Greg

  • Oracle.DataAccess.dll not loading in 64 - bit OS

    Hi All
    I have a console application that needs to be scheduled in task manager. My system is 32-bit operating system and I’m using Oracle.DataAccess.dll in my application to establish connection to the oracle db. The version is 2.112.1.0 and the processor architecture of this dll in C:\Windows\Assembly is x86. In my local m/c this dll works fine with all 3 build and target platforms – x64, x86 or AnyCPU. But when I copy the files to my staging server which is a 64-bit OS I’m getting the following exception. (Note: I’m also having Oracle.DataAccess version 10.2.0.100 which is also x86 available in C:\Windows\Assembly)
    System.BadImageFormatException: Could not load file or assembly 'Oracle.DataAccess, Version=2.112.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. An attempt was made to load a program with an incorrect format.
    File name: 'Oracle.DataAccess, Version=2.112.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342' at
    Assembly manager loaded from: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
    Running under executable D:\ProjectFolder\MyExecutable.exe
    Assembly manager loaded from: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
    Running under executable D:\ ProjectFolder\MyExecutable.exe
    --- A detailed error log follows.
    === Pre-bind state information ===
    LOG: User = UserId
    LOG: DisplayName = Oracle.DataAccess, Version=2.112.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342
    (Fully-specified)
    LOG: Appbase = file:///D:/ ProjectFolder/
    LOG: Initial PrivatePath = NULL
    Calling assembly : MyAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null.
    ===
    LOG: This bind starts in default load context.
    LOG: Using application configuration file: D:\ ProjectFolder\MyExecutable.exe.Config
    LOG: Using host configuration file:
    LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config.
    LOG: Post-policy reference: Oracle.DataAccess, Version=2.112.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342
    LOG: Attempting download of new URL file:///D:/ ProjectFolder/ Oracle.DataAccess.DLL.
    ERR: Failed to complete setup of assembly (hr = 0x8007000b). Probing terminated.
    I have tried to build the application to target AnyCPU / x64 / x86. It fails in all 3 scenarios.
    There are other applications in the staging server where Oracle connection can be established. So ODP.Net should be registered in the server. So looks like problem with my console app. Does anyone have any idea what could be the problem?
    Thanks & Regards,
    Sree

    If I'm reading your post correctly, your application is built using ODP.net 2.112.1.0 (an 11gR2 client) and your other system has 10.2.0.100 (a 10g client).
    That's your problem. When .net tries to load the assembly, it looks for 2.112.1.0. Policy files that get installed when you install the client would allow it to use a newer version instead (like 2.112.3.0), but not to use an older version. So .net doesn't think you have a compatible Oracle client installed.
    You could manually add assembly binding redirects to force it to load 10.2.0.100, but I really don't recommend that given some differences between 10g and 11g (I tried that once and had some weird problems). You could also build the application using 10.2.0.100 instead.
    The best fix for this is to install 2.112.1.0 on the other system, or try out the managed client when it's out of beta (which doesn't need to be installed at all).

  • Issues with different versions of Oracle.DataAccess.dll

    I have a .net web service application which references version 10.2.0.100 of Oracle.DataAccess.dll. A client has setup Oracle 10g database on the server, but I think the server has a patch set installed so it appears that the versions of Oracle.DataAccess.dll in my web service and on the database server do not match. When I issue a query via the web service on my local machine using my oracle 10g client, the web method returns the correct data. If I issue the same query using the same .net web service on the clients database server, I get the following error: Oracle.DataAccess.Client.OracleException: ORA-00923: FROM keyword not found where expected. There's nothing wrong with the query syntax, I can run the same query from SQL Plus on the database server and get the correct data. Could it be a compatibility issue between the Oracle.DataAccess.dll referenced in my web service application and the file on the sever. I'm not sure what else to look for, any advice is greatly appreciate, and I can answer any questions if needed.
    Thanks,
    NA

    I would not expect an ORA-923 if your the Oracle client was not installed properly. I would expect an exception or a crash.
    You can run an ODP.NET trace to find out what query is getting the ORA-923 by doing the following:
    1) Shutdown web server on the machine that runs the webservice (middle tier),
    2) In windows registry, on the machine that runs the webservice (middle tier), change registry value \\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ODP.NET\4.112.1.1\TraceLevel to 1
    3) Reproduce the ORA-923 only
    4) shutdown webserver
    5) Undo the registry value (set it back to 0)
    6) In the generated file (c:\odpnet2.0.trc) do a search for "923", hopefully you can find it. Just before that error, you should see the SQL that was executed. This will obviously not be what you expect and will hopefully point you to the cause of the problem.

  • Oracle.DataAccess.dll FileNotFundException in VS 2010 project

    Hello,
    I've got a troubleshot whith my Windows Service App, build in VS 2010 (Professional & Ultimate ed.) (build in both x64 & x32) :
    FileNotFoundEcxeption
    "Could not load file or assembly 'Oracle.DataAccess, Version = 4.112.2.30, Culture = neutral, PublicKeyToken = 89b483f429c47342'or one of its dependencies. The specified file is not found."
    Same things when i'll try to run the examples project in ODP.NET Package 11.2.0 (FrameWork V2.x and V4).
    My Windows Service worked correctly before, but stoped working since few days. Maybe new updates of .NET frameworks ?
    Thanks for your help.

    wesbird wrote:
    When I install it on my user's machine, which have 2.111.7.0 version of Oracle.DataAccess.dll. Now it stop working.
    a) install 2.112.1.0 version of Oracle.DataAccess.dll in my setup package and install it on user's machineJust wanted to point out that if "2.111.7.0" means the user's machine has Oracle 11.1.0.7 something installed, then simply including a "2.112.1.0" dll is not enough i.e. whole 11.2 Client install is needed. Having multiple Oracle homes on a Windows pc might not work well for some apps (think dependencies/support requirements for 3rd part Oracle apps).
    Perhaps ODAC Xcopy deployment package could help simplify deployment.
    32-bit ODAC Xcopy version
    http://www.oracle.com/technetwork/database/windows/downloads/utilsoft-087491.html
    64-bit equivalent
    http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html
    Edited by: orafad on Aug 24, 2011 1:10 AM

  • How reference 64-bit Oracle.DataAccess.dll in VS2010?

    Hello!
    We have installed ODAC 64-bit 4.112.2.0 on our new developer computers. With 32-bit version of ODAC we would do this to add oracle references: Add Reference -> .NET Tab and add Oracle.Web.dll and Oracle.DataAccess.dll. But after our switch to 64-bit the files arent there anymore. We could do something like make a local reference (include bin-folder in project and put files there and point reference to them for an example) but this does not seem like a good solution. Has anyone else experienced this problem and solved it?
    /regards

    You don't need reference on x64 version. You can add reference on x86 version. If you would like to run project from VS then you need x86 version Oracle Client because VS is x86 application.
    Both ODAC DLL (x86 and x64) has same signature. If you build project with "any cpu" option then right version ODP.NET is used at the runtime.

  • Program Ver is 10.1.0.4(Oracle.DataAccess.dll)  computer Ver is 10.1.0.2

    My computer Ver is 10.1.0.2(Oracle.DataAccess.dll),
    but program Ver is 10.1.0.4(Oracle.DataAccess.dll)
    Run Program's exe In my computer,Error.
    Policy.9.2.Oracle.DataAccess.dll and Policy.10.1.Oracle.DataAccess.dll,
    They are only in 10.2.0.100 client.
    I make them to Windows assembly.
    But Run Program's exe In my computer,Error too.
    Thank you very much.

    Thank you very much.
    But we make a project for custmers
    They are using a lower Ver,We can't make them to use a Higher Ver.
    I want a solution for this problem:
    The program is a high Ver, Run it the computer is a low Ver(Oracle.DataAccess).
    How to make it?

  • Is it safe to Corflag Oracle.DataAccess.dll

    Hello,
    Is it safe to use CORFLAGS.EXE to change the bit-architecture of the Oracle.DataAccess.dll (the version included in Oracle Client 11gR2) to AnyCPU by clearing up the 32bit flag?
    This dll (in the Oracle Client 32 bit installation) originally has the 32bit flag set to 1 like this:
    PE        : PE32
    32BIT     : 1
    but all the rest of the dlls (some are 3rd party) in my projects have this flag clear b/c they are AnyCPU. They are set like this:
    PE        : PE32
    32BIT     : 0
    so at runtime it throws BadImageFormatException b/c some dlls are AnyCPU and others are 32bit
    If I copy the 32bit Oracle.DataAccess.dll to my project's local folder, change the project to reference this local copy, and clear the dll's 32bit flag with corflags, making it AnyCPU, that works around the exception, and the project runs w/o apparent issues.  But I wonder whether clearing this flag would make this dll unsafe or poses any other problem.
    I'd appreciate if you could talk about the implications or side-effects, or if there's another way to solve this architecture/bit dilemma
    Is there an AnyCPU Oracle Client out there?
    Thank you in advance
    Sincerely,
    Richard

    Thanks to Mark for your advice. Let me say for the sake of clarity that I'd never think of corflag-ing the original dll not place an adultered dll in the GAC; I was thinking to place the changed dll in a local folder under the project (bin), and refer to this local copy
    I'm interested in the Managed Provider but I know nothing about it yet, and I'm sure I'd have to make source code changes in the projects. I'm not sure if the developers of the Oracle Client realize that we're not in a vacuum out here, and when something stops being supported, it breaks things businesses are using for day-to-day work; when a product stops being backwards compatible, it creates lots of problems that affect businesses. For example, I see recommendations like to rebuild the project as 32bit or 64bit, but these are not Hello World or demo projects, these projects depend on 3rd party components that aren't available in those architectures, they are only AnyCPU. There are also other dlls from other teams in-house, from which I don't own the source code. It's impractical to ask people who are busy working on their own assignments, to convert 6 or 7 projects which have been untouched for years w/o having a business need. Another issue with changing everything to 64bit is that these apps are running on development, test, and production servers, which are 32bit, so in order to move them to 64bit, infrastructure would have to migrate each one of these environments to new servers, then the apps would have to be tested by users of the business, wasting their time all over again again... Not practical
    All this trouble comes b/c I'm just moving my development machine to 64bits. I'm not supposed to be working/wasting time rewriting code that's locked under source control and has been tested and approved, and has been running in production for years. That's the reason why I'm not very pleased with the idea of the Managed Provider, b/c code that's in production, will have to be rewritten, deployed again in test, re-tested, and then released to production again, when there should be an AnyCPU version of the client and that'd be the end of it. All apps we have use the client, so eventually would everything have to be rewritten for this Managed Provider?
    If I install the Managed Provider is it likely to create issues with the Oracle Client I already have installed?
    Thank you very much
    Richard

  • Could not load file or assembly 'Oracle.DataAccess, Version=4.112.4.0

    Hello Everyone,
    I am simply trying to insert into an oracle database table. When I try to run the insert from my visual studio program after a button is clicked the program stops and I get "Could not load file or assembly 'Oracle.DataAccess, Version=4.112.4.0" error.
    Why is this? I have added the reference and put "using Oracle.DataAccess;" in the file. The code is below. Any suggestions?
    OracleConnection Con = new OracleConnection(ConfigurationManager.ConnectionStrings["ConnectionString1"].ToString());
    OracleCommand sqlCmd = new OracleCommand();
    //OracleDataReader dr;
    sqlCmd.Connection = Con;
    Con.Open();
    sqlCmd.CommandText = "INSERT INTO FGID values (0, 0, 0, ' ', sysdate)";
    sqlCmd.ExecuteNonQuery();
    sqlCmd.Clone();
    MessageBox.Show("Record Inserted!");
    M.N.

    Hi Boa_nerges,
    >>Could not load file or assembly 'Oracle.DataAccess, Version=4.112.4.0" error.
    Whether all projects have the same issue?
    Please make sure that it is not the platform target issue in your project property. Or the setup version issue.
    Reference:
    https://social.msdn.microsoft.com/Forums/en-US/9827bb73-a58b-415d-ad93-8e08f3a1258b/need-urgent-help-could-not-load-file-or-assembly-39oracledataaccess-version411220?forum=csharpgeneral
    http://forums.asp.net/t/1661229.aspx?How+to+change+assembely+reference+to+Oracle+DataAccess+in+prod+
    In addition, if still no help, since the oracle is the third party tool, I suggest you post this issue to the Oracle forum:
    https://community.oracle.com/community/database
    Best Regards,
    Jack
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Could not load file or assembly Oracle.DataAccess, Version=4.112.2.0

    Hi There..
    I'm running the follows:
    1. OS : XP SP3
    2. VS 2010
    3. ODP Net 11.2.0.2.0
    When I set the ASP NET target framework to .NET 4 all running normally. However, if the set target to .NET 2 appears error "Could not load file or assembly Oracle.DataAccess, Version=4.112.2.0".
    What could be the problem ?
    Thanks,
    Iqbal

    Just figure it out..
    use assembly binding when targetted framework is 2.0
    <runtime>
              <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
                   <dependentAssembly>
                        <assemblyIdentity name="Oracle.DataAccess" publicKeyToken="89b483f429c47342"/>
                        <bindingRedirect oldVersion="4.112.2.0" newVersion="2.112.2.0"/>
                   </dependentAssembly>
              </assemblyBinding>
         </runtime>
    .. and all running back normally :D

  • Could not load file or assembly 'Oracle.DataAccess, Version=2.112.3.0

    Hi,
    I am using windows 7 64 bit Enterprise Edition, Visual Studio 2010 Premium, and my app is built using .net framework 4.0. I downloaded and install ODP.NET 11.2.0.32 but when I add reference Oracle.DataAccess to my app, its giving me the following error, *"Could not load file or assembly 'Oracle.DataAccess, Version=2.112.3.0, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The system cannot find the file specified."*
    I have checked other threads on this same topic, but I found that I have proper version (64bit) of ODP.NET as per my OS, Visual Studio & .net framework.
    Am I missing something, please help.

    Hi,
    I manage to resolve the error, the error is though due to a different reason,
    I was trying to add ODP.Net 64bit reference directly to a Web Site project in Visual Studio 2010, then find out that this is not possible as the web site builds based on aspnet worker process, and that is 32bit, hence there was a problem referencing the 64bit ODP.NET assembly.
    So I created a class library project for any cpu and refer the 64bit assembly in there, and refer the class library project in the main web site, and the problem solved.

  • Bin\2.x\Oracle.DataAccess.dll vs. bin\4\Oracle.DataAccess.dll question

    Hi all,
    Another (hopefully) easy question. I searched, but couldn't find references to this so thought I would ask. I also checked the readmes, etc. that were in the folders.
    What is the difference between bin\2.x\Oracle.DataAccess.dll and bin\4\Oracle.DataAccess.dll?
    From what I can guess, the 2.x version is for all versions of .NET from 2.x - 3.x and the \4\ version is for .NET 4.x. Other than that, they appear to be the same.
    Thanks,
    JustMe

    You are correct that the 2.x folder is for use with .NET 2 - 3.5, and the 4.x folder is for use with .NET 4.
    Apart from .NET 4 support, there is no new functionality between the two.
    Honestly, I don't know what specific differences there are between the two inside the dll, but the 4.x odp is 4k bigger than the 2.x dll.
    Cheers,
    Greg

  • Oracle.DataAccess.dll only 32 bits

    Hello,
    I have Oracle Client 11.2.0 32bit and 64bit installed side-by-side. When I run CORFLAGS.EXE on the Oracle.DataAccess.dll that's in the 32 bit ODP NET's Bin folder and then run it on the dll that's in the 64 bit's Bin folder, these are the results:
    Oracle.DataAccess.dll (from 32Bit folder)
    Microsoft (R) .NET Framework CorFlags Conversion Tool.  Version  4.0.30319.1
    Copyright (c) Microsoft Corporation.  All rights reserved.
    Version   : v4.0.30319
    CLR Header: 2.5
    PE        : PE32
    CorFlags  : 24
    ILONLY    : 0
    32BIT     : 0
    Signed    : 1
    Oracle.DataAccess.dll (from 64Bit folder)
    Microsoft (R) .NET Framework CorFlags Conversion Tool.  Version  4.0.30319.1
    Copyright (c) Microsoft Corporation.  All rights reserved.
    Version   : v4.0.30319
    CLR Header: 2.5
    PE        : PE32
    CorFlags  : 24
    ILONLY    : 0
    32BIT     : 0
    Signed    : 1
    Are these 2 files "AnyCPU" which in .NET would make them 32 bit binaries? Is there a 64 bit version of this DLL?
    Thanks in advance,
    Richard

    Sorry, I correct myself... the dlls are correct. I have a batch file that runs corflags on about 15 dlls from a project that's giving me a BadFormatImage exception, and I had made a mistake in the batch file. That'd made me believe there was something wrong with my OClient. The corflags results now show correctly:
    Oracle.DataAccess.dll  32 bit
    CLR Header: 2.5
    PE        : PE32
    CorFlags  : 11
    ILONLY    : 1
    32BIT     : 1
    Signed    : 1
    Oracle.DataAccess.dll   64 bit
    CLR Header: 2.5
    PE        : PE32+
    CorFlags  : 9
    ILONLY    : 1
    32BIT     : 0
    Signed    : 1
    Thank you Alex

Maybe you are looking for