2011-04-11 42 views
10

Recientemente comencé a trabajar en un proyecto que básicamente es una GUI para una aplicación de consola FORTRAN que ejecuta una serie de simulaciones en un conjunto de datos.Visual Studio y FORTRAN trabajando juntos?

Lo que quiero hacer es poder modificar este código FORTRAN y compilarlo como .dll para poder pasar los datos directamente a él a través de una especie de importación de DLL.

Así que me preguntaba, ¿puede configurar un proyecto FORTRAN en Visual Studio 2010? ¿Como para poder compilar y depurar el código?

¿Y hay algo negativo asociado con realizar llamadas directas al archivo compilado FORTRAN .dll? ¿Tal como tipos de datos de parámetros limitados/tipos de datos de retorno?

Gracias, Alex.

Respuesta

9

Así que me preguntaba, ¿puede configurar un proyecto FORTRAN en Visual Studio 2010? ¿Como para poder compilar y depurar el código?

Sí, puedes. Pero creo que debes comprar un compilador comercial con integración a VS.

Conozco al menos 3 opciones. Intel® Fortran Composer y PGI Visual Fortran® pueden producir código nativo y Silverfrost FTN95 pueden producir ensamblados .NET (es compatible con .NET 4.0).

¿Y hay algo negativo asociado con realizar llamadas directas al archivo compilado FORTRAN .dll? ¿Tal como tipos de datos de parámetros limitados/tipos de datos de retorno?

Pero si ya tiene una aplicación de consola de la que realmente recomiendo, guárdela como está. No cree DLL, solo escriba su aplicación GUI como una especie de front-end para el back-end de su consola. La interfaz de usuario de la interfaz gráfica de usuario debería poder generar archivos de entrada y analizar los archivos de salida.

Desde mi punto de vista, esta forma es mucho más flexible. En el futuro, puede usar fácilmente la consola de fondo en clúster * nix, por ejemplo. O bien, algunos usuarios experimentados pueden usar secuencias de comandos en el backend de la consola ...

También puede hacer posible que el usuario envíe este archivo de entrada generado al back-end de la consola (creando un nuevo proceso) desde su aplicación GUI. La aplicación GUI esperará a que finalice el proceso y luego analizará la salida. Pero tal integración ajustada de back-end y front-end no es necesaria.

+1

Los archivos de entrada son demasiado complejos e incómodos, también queremos poder traer múltiples fuentes de datos, que también deberían ser compatibles con la aplicación de la consola. También simplemente escribiremos una extensión en nuestra aplicación GUI que permitirá la creación de secuencias de comandos por lotes con archivos de entrada. –

Cuestiones relacionadas