Environment: Windows R2 Enterprise Edition 64-bit, Oracle11g64-bit server is installed. C #3.5 development bs system, 32-bit version. Delphi7 cs service error prompt: Oracle11g64-bit connection to Oracle on 64-bit operating system and solution BadImageFormatException solve the problem of Delphi7.0 using Oledb link 64-bit o
Environment: Windows R2 Enterprise Edition 64-bit, Oracle 11g 64-bit server is installed. C #3.5 developed B/s system, 32-bit version. Delphi7 c/s service error prompt: Oracle 11g 64-bit version connected to Oracle on a 64-bit operating system and solution BadImageFormatException while solving Delphi7.0 using Oledb link 64-bit o
Environment: Windows R2 Enterprise Edition 64-bit, Oracle 11g 64-bit server is installed. C #3.5 developed B/s system, 32-bit version. C/s Service developed by delphi7
Error message:
The Problem and Solution of connecting Oracle on 64-bit operating system of Oracle 11g 64-bit version BadImageFormatException also solves the problem of incorrect password when Delphi7.0 uses Oledb link 64-bit oracle11g.
BadImageFomatException is thrown when you try to load the Oracle client library. This problem occurs when the 32-bit Oracle client component is installed in 64-Bit mode.
The cause of the error is that the OracleInstantClient installed on the WinXP host is 32 bits, so the OracleClient used by the compiled program is also 32 bits, resulting in compatibility problems. Of course, if you reinstall the 64-bit Oracle client on the 64-bit operating system and re-compile the program, the problem can also be solved. Here we will introduce a simple method to transplant the program.
If the 32-bit oracle9i client is installed on the server, pay attention to the Case sensitivity of the password. By default, the 9i client converts the password to uppercase. Pay special attention to this.
The solution is to install an Oracle 11g 32-bit client on the server.
Reference: Login on Windows 2008x64
After switching to Vista x64 and Windows 2008 x64 from the home and the company's machine, you can enjoy the wonderful movie experience, it is also a new kind of experience in the New World. Most of the high-end applications can be hosted on the x86 platform. However, there are a lot of programs that involve low-concurrency processing to choose when appropriate, such: ramDisk is unable to use because the Driver does not have any license chapter and supports x64 free anti-virus software. Previously, we mentioned that we have re-Survey the DVD license program...
In these cases, the shortage of images becomes too much when I bit my teeth. What makes me most painful is the ODP that was originally used by many people. NET 9207 does not support x64 at all, and the security program cannot run!
Google started to Support Vista/Windows 2008x64 on Oracle 10.2G. However, I do not know what to do on the native ORACLE website, HTTP 404 is displayed at the end of the lower limit. The most efficient solution is to upload the code below to the 10204_vista_w2k8_x64_production_client.zip file of nearly MNS. The server guard successfully used the existing script to complete the attack. The result is:
System. Data. OracleClient requires Oracle client software version 8.1.7 or greater.
After checking the permission limit and so on, You can restart the machine and the information changes:
System. invalidOperationException: Attempt to load Oracle client libraries threw BadImageFormatException. this problem will occur when running in 64 bit mode with the 32 bit Oracle client components installed. ---> System. badImageFormatException: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B ).
It seems that the DLL version is not correct, but I understand that the 64-bit Oracle Client ,. the. NET program limits the Build for x86 CPU. Why does it tell me that a 32bit Oracle Client is merged in 64 Mode? The opposite is true.
When the Build for AnyCPU or x64 function is configured, it is possible to roll back to Oracle. However, when it is set to x86, it is possible to see the opposite problem. When I set it to x86, retrieving 64-bit Oracle Client DLL may cause a problem. It is quite reasonable, but the initial response may confuse me. If this is the problem, will it be better to renew the 32bit Oracle Client at the same time? However, how does System. Data. OracleClient know whether to use 32-bit or 64-bit Oracle Client? Do I need to change the Registry or set the PATH environment change to the Client used by the Client? All questions must be answered !!
Find 10203_vista_w2k8_x86_production_client.zip, and log on to c: \ oracle \ ora10g vs c: \ oracle \ ora10g_x86 in another project: \ oracle \ oar10g_x86 \ bin takes effect, and x86 can be run. Cut into x64 and run again with expectation. Yes! It's successful !! But is this the result of using 32bit Oracle Client for x64. NET?
Using Process Monitor to solve the problem: System. data. oracleClient will search for oci along the PATH for change data. dll. c: \ oracle \ ora10g_x86 \ bin \ oci will be omitted in x64. dll, find c: \ oracle \ ora10g \ bin \ oci. dll-based upload; for x86, c: \ oracle \ ora10g_x86 \ bin \ oci is found. the dll is end-to-end. AnyCPU is the same as x64.
(Remember the previous PB6 release Oracle9? The PATH method is used)
In other words, OracleClient will decide the Oracle Client version based on x64/x86. I don't have to manually switch the Oracle Client version. Therefore, if you want to use System on Windows 2008/Vista x64. data. upgrade lient, it is best to upgrade both the 32bit and 64bit versions of the 10.2 + versions of Oracle Client, and confirm that the bin category of both versions in the PATH change is in it, and everything is done.
It may take me a few weeks to solve the problem. I hope this will help other fellow citizens who have been operating in the x64 forest.