Archive for the ‘Autodesk’ Tag

Autodesk AutoCAD Map 2011 y .NET Framework 4.0

Hace unos cuantos meses, cuando me dispuse a realizar mis primeros módulos en AutoCAD Map 2011, me puse en la disyuntiva de que versión del .NET Framework debería utilizar; dado que recientemente, migramos todo el proyecto GIS de Catastro que estamos desarrollando al .NET Framework 4.0 y Visual Studio 2010; la primera opción era la de utilizar la versión 4.0 del .NET Framework, pero el temor principal era la compatibilidad de AutoCAD Map 2011 con la última versión del .NET Framework.

Llegado a este punto, la única manera de despojarnos de estos temores es haciendo las usuales pruebas, así que me dispuse a programar mi clásico “Hola Mundo”, y grande fue mi sorpresa al encontrarme con este hermoso error de AutoCAD que parecía confirmar todos mis temores.

ErrorEnsambladoNoSoportado

la siguiente línea del mensaje de error fue el que me hizo sudar frio: “This assembly is built by a runtime newer than the currently loaded runtime and connot be loaded”, parecía indicar claramente que el ensamblado que intentaba ejecutar había sido compilado por una versión del .NET Framework mas nueva de la que podía soportar AutoCAD Map 2011; pero esa interpretación inicial traducida en el calor del momento, no era correcta, ya que en realidad dice que el ensamblado que intento ejecutar es mas nuevo que el .NET Framework que actualmente esta cargado; entonces alentado con esta pisca de esperanza me puse en la labor de buscar como cargar el Framework 4.0 en AutoCAD Map 2011 para que pueda ejecutar el ensamblado de prueba que acababa de crear.

Como es usual en estos casos, luego de buscar en interminables sitios web, haber revisado muchos manuales de Autodesk, y haber leído innumerables foros, nadie podía decirme exactamente cual era la manera de solucionar mi problema, pero en muchos de esos lugares encontré pistas importantes, como por ejemplo la existencia del archivo “acad.exe.config”, si señores como los archivos de configuración que toda una vida usamos al desarrollar nuestras aplicaciones .NET, así que nada mejor que echarle una mirada a este archivo haber si encontramos alguna pista adicional.

acad.exe.config_original

Analizando detenidamente la primera sección de configuración, podemos leer claramente que “<supportedRuntime version=“v4.0”/>” está comentada. así que todo parece indicar que ahora podemos decir Bingo!!!.

Al realizar una instalación por defecto de AutoCAD Map 2011, esta sección de configuración siempre esta comentada, por tanto solo nos queda descomentar esta sección, de tal manera que el archivo de configuración “acad.exe.config”, que dicho sea de paso se encuentra en la carpeta de instalación de AutoCAD Map 2011, quede de la siguiente manera:

acad.exe.config_modificado

Con la configuración anterior, ahora podemos proceder a ejecutar nuevamente nuestro “Hola Mundo” y esta vez AutoCAD nos deja cargar el ensamblado sin ningún mensaje de error y permite mostrar en tan ansiado mensaje:

HolaMundo

Para concluir, seguramente que todos ya sabrán con que versión del .NET Framework estoy trabajando mis módulos de AutoCAD Map, por supuesto la 4.0 y no podría ser de otra manera que con C#. También cabe aclarar que si bien esta prueba la realicé con AutoCAD Map 2011, esto funciona igual para AutoCAD 2011, AutoCAD Civil 2011, etc. Para versiones anteriores de AutoCAD, queda como tarea para el lector, averiguar si esto funciona.

Anuncios