Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tenia una aplicación realizada en ASP la cual funcionaba con VS 2008 luego la migre a 2010 hasta que la pase 2012 y hasta
Archivo del blog ahí la deje. No me presentaba problemas con el cliente de Oracle 11.1.0.2G para 32bits pero cuando quise actualizar a
12.2.0.1 C para 64 bits se volvió un dolor de cabeza que corriera con VS ya que siempre se presentaba el error:
2019 (3)
julio (1)
No se puede cargar el archivo o ensamblado 'Oracle.DataAccess' ni
mayo (1)
febrero (1)
una de sus dependencias. Se ha intentado cargar un programa con
No se puede un formato incorrecto.
cargar el
archivo o
ensambla
do
'Oracle...
2018 (8)
2017 (5)
2016 (3)
2015 (2)
Seguí los paso recomendados en el Oracle Suport para la instalación y configuración del ODAC64 en VS ASP agregarlos en
2014 (2) el proyecto como referencia y establecer el proyecto de AnyCpu a x64.
2012 (6)
2011 (10)
Seguidores
Seguidores
(9)
Seguir
Aunque se siguió todos los pasos recomendados, esto no funcionaba y seguía dando el mismo error.
Después de indagar, investigar y probar mucho me percate de una particularidad del VS2012 y es que el IIS Express funciona
a 32bits, esto quería decir que jamas de los jamases me iba a funcionar la conexión con el Oracle.DataAccess.dll de 64bits. Y
entonces, de que me sirve establecer el AnyCpu o x64? bueno eso solo sirve ara la compilación y generacion de los archivos
binarios y empaquetados Dll por ello en la compilación no da error sino en la ejecución por que el IIS Express al ejecutar en
32bits SOLO va a ejecutar referencias que funcionen a 32bits!!!.
Y ahora que hacemos ? Instalamos un Visual Studio para 64 bits? bueno, pues eso sería lo lógico pero no existe un VS para
64bits. Y ahora? bueno para este tipo de inconvenientes de plataformas web de 64bits Microsoft incluyó desde la versión
VS2013 la opción de ejecutar los proyectos web en plataforma IIS de 64bits. En Herramientas\Opciones\Proyectos y
Soluciones\Proyectos Web activa el casillero Usa version de 64bits para IIS Express.
Bueno, esta solucionado para los que tiene VS2013 y superior. Y los que tenemos VS2012 que hacemos?
Bueno, también lo podemos hacer que ejecute el IIS Express a 64bits pero es un poco mas complicado ya que tenemos que
tenemos que hacerlo desde el regedit.
Ejecutamos el regedit, vamos a la ruta HKEY_CU\SOFTWARE\Microsotf\VisualStudio\11.0\WebProjects, aqui agregamos un
nuevo valor DWORD Use64BitIISExpress con valor 1, esto hará que por defectos el IIS Express del VS2012 funcione a
64bits.
Y listo, reiniciamos el VS2012 para que cargue con la nueva configuración y ejecute el IIS Express ejecute a 64bits y asi
funcione nuestra conexión Oracle 12c con Oracle.DataAccess.dll de 64bits.
Nota: Una vez configurado el IIS para 64bits los proyectos web de 32bits no funcionaran. Tendran que dejar la configuración
original.
Correct all grammar errors and enhance your writing at once while using
Grammarly Grammarly
2 comentarios:
muchisimas gracias, volvi despueps de 4 años a usa VS y me estaba dando un dolor de cabeza frustante este error...pase la
tarde entera instalando y desinstalando oracle client.
Responder
Respuestas
Tienes suerte de que haya sido una tarde, yo ya voy por la semana.. Esta explicacion es buenisima y completa,
lastima que no la puedo aprovechar porque no tengo ninguna carpeta de proyectos web en el regedit. Saludos.
Responder
Comentar como:
Publicar Avisarme
Grammarly