Het spijt me dat ik een tweede antwoord heb toegevoegd, maar als u 64-bits en 32-bits clients op dezelfde machine hebt geïnstalleerd, kunt u dit probleem ook tegenkomen.
Twee clients geïnstalleerd
C:\oracle\product\11.2.0\client32Bit
C:\oracle\product\11.2.0\client64Bit
Beheers uw pad Omgevingsvariabele. Welke Oracle-client eerst is, wordt vóór de andere geladen.
echo %PATH%
XXXX;C:\oracle\product\11.2.0\client64Bit\BIN;XXX
Aangezien mijn 64-bits Oracle-client de eerste is in PATH, probeert VS.NET het te gebruiken voor Oracle-verbindingen en genereert Bad Image Exception.
set PATH=C:\oracle\product\11.2.0\client32Bit\BIN;%PATH%
REM Visual Studio 2008
"C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe"
REM Visual Studio 2010
"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe"
Hierna kunt u Oracle aansluiten. Natuurlijk kun je de 32-bits client eerst in het pad plaatsen, maar voor andere toepassingen geef ik er de voorkeur aan om de 64-bits client vóór de 32-bits te plaatsen.