i've got a .net 2.0 app running on XP 64. I installed x86 client. Which does have an older .Net data access component i think. TO be honest cant remember what i installed to get it to work but it was nothing special. Also i'm on Oracle DB 10.2 and this is a Dev/Test senario.
Hope this helps.
While testing 64 bit ODP.NET, one of our developers got an error message, googled the error, saw this thread and wrongly concluded that ODP.NET will not work on a 64-bit machine. But after some troubleshooting, we found that the problem was actually caused due to an improper installation of the .NET framework. Our gacutil.exe was missing. Without this ODP.NET will not install properly. And if ODP.NET install is incomplete, you will get the error that is mentioned in this thread.
We removed ODP and .NET 2.0 SDK from our machine and reinstalled them, verified that the logs did not show ANY errors. Our applications are working fine on the 64-bit machine now.
I see the ODAC for x64 Windows is out now, but the release notes only refer to
64AMD or EM64T processors.
Does this also include 64-bit Intel Xeon Processors? Or is it only good for AMD?
Message was edited by:
well . . . apparently Intel EM64T is the same thing as Intel Xeon.
WTF. Kind of like how Jack Kennedy and John Kennedy are the same person.
would still appreciate if anyone knows this is wrong, and can correct me.
My dev machine is 32 bit but the new hardware is 64 bit. Do I have to install the 64 bit on my dev machine to get it to work on the new hardware or can I just use the 32 bit on my machine and install the 64 bit on the harware and my application be able to use it?
Sorry for the silly question.
These answers apply on to AMD64 and Intel EM64T hardware:
You can run 32-bit Oracle (server and client) on 32-bit Windows.
You can run 32-bit Oracle (client only) on 64-bit Windows.
You can run 64-bit Oracle (server and client) on 64-bit Windows.
my developing machine is running Vista x64 with VS2008. I'm currently using ODP.NET 11g 32bit along with client 11g 32bit. My project setting was "Any CPU" and it didn't work - it raised a System.BadImageFormatException.
I changed platform type to "x86" and now it's working.
Just a hint for you guys ;)
EDIT: my target clients are only running 32bit XP - so there will be no need for me to change to 64bit. BTW, ODAC 11g 64bit isn't released by now.
Did you have to do anything special when you installed the client? I tried ODAC 10.2.x when I had 64bit Vista installed and it just died with non-supported version messages.
Did you ever use the 10.2 ODAC or just the 11g? All my clients are currently XP or 32bit WinServer 2003 so from a deployment issue I don't care.
Sorry, I've never tried to install 10g ODAC on Vista x64. I installed 11g ODAC and it works. But there is a little trap: You will have a local copy of Oracle.DataAccess in your VS solution folder and you MUST set "Specific Version=true", otherwise you have a reference to 11g ODAC and it doesn't work on the client (if it only has 10g ODAC installed, as in my case).
But when your clients are running 11g everything will be fine.
Here is my isse:
I have a Windows Server 2008 x64 machine and have successfully connected a simple ASP.NET/C# application to an Oracle database using the ODAC 11g client. My next step, is adding this same oracle connection to a SharePoint web part (which is developed on the same machine). The SharePoint Server, Web Server, etc. all live on the same machine as well. I figured I could just add the Oracle.DataAccess reference to my SharePoint Web Part, add the oracle connection code, and be done... but ohh now... I am getting the following error when loading my web part through the browser with the oracle connection:
[BadImageFormatException: Could not load file or assembly 'Oracle.DataAccess, Version=188.8.131.52, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. An attempt was made to load a program with an incorrect format.]
Can someone please help me debug this? I have the assembly in the GAC with the correct version. For some reason it is not seeing it? I am confused as to why a simple ASP.NET/C# application would work fine, but now that it is up on SharePoint it does not work. I have even tried setting the platform to x64 in VS, but no luck. Any ideas?
[TargetInvocationException: Exception has been thrown by the target of an invocation.] at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandle& ctor, Boolean& bNeedSecurityCheck) at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean fillCache) at System.RuntimeType.CreateInstanceImpl(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean fillCache) at System.Activator.CreateInstance(Type type, Boolean nonPublic) at Microsoft.SharePoint.WebPartPages.SPWebPartReflectionHelper.GetDefaultControl(Type controlType) at Microsoft.SharePoint.WebPartPages.BinaryWebPartDeserializer.LoadInitialWebPart() at Microsoft.SharePoint.WebPartPages.BinaryWebPartDeserializer.Deserialize() at Microsoft.SharePoint.WebPartPages.SPWebPartManager.CreateWebPartsFromRowSetData(Boolean onlyInitializeClosedWebParts)
[BadImageFormatException: Could not load file or assembly 'Oracle.DataAccess, Version=184.108.40.206, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. An attempt was made to load a program with an incorrect format.] at PortalOBIEEReportList.OBIEEReportList.OBIEEReportList..ctor()
You can get around this by compiling in 32 bit mode....otherwise if it is a web app, make sure that enable 32bit applications is set to true in iis for the app pool. The only other solution is to get eh 64 bit installation working.