FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Pueden invocarse DLLs creados con .NET desde aplicativos Delphi que no sean .NET ?
Hola,
Espero que puedan ayudarme. Nunca he trabajado con .NET y no sé casi nada del tema; pero, para un problema en particular causado por un error conocido del propio Microsoft,la única solución razonable que dan involucra usar algo de .NET. Como mi aplicación es Win32, o habrá que renunciar a una característica que venía funcionando muy bien, o habrá que establecer una pequeña interfase. Para saber si vale la pena investigar la segunda opción, les tengo estas preguntas: Es posible escribir una DLL con .NET que exporte una función, de forma que pueda ser invocada por una aplicación escrita en una versión de Delphi que no sea para .NET ? Si no es posible, hay alguna forma de importar una librería de clases de .NET a una versión de Delphi que no sea para .NET ? En ambos casos, de poder hacerse, se pueden obtener en forma 100% binaria de manera que no sea necesario montar en los clientes la plataforma de .NET usualmente requerida para ejecución (entiendo que es el framework). ? Gracias por la atención |
#2
|
||||
|
||||
Cita:
Es posible invocar desde Delphi para win32 (Caso específico delphi 7), librerias escritas en C#. La manera de hacerlo la encontrarás en el libro: Mastering delphi 7 de marco cantú. editorial Sibex
__________________
Conoce mi blog http://www.edgartec.com |
#3
|
|||
|
|||
Gracias. Comentarios y duda
Cita:
Gracias por la información. He estado buscando el libro; pero no lo he encontrado en las librerías de la ciudad y dudo que esté disponible en mi país. De todas formas hoy haré un último intento. He visto que lo ofrecen en Internet en www.amazon.com; pero esa vía tomaría mucho tiempo y la decisión de como superar el problema ya tenemos que tomarla. Por otro lado, con la ayuda de un amigo hemos logrado generar la DLL de .NET requerida. Aún no hemos conseguído invocarla desde Delphi; sin embargo, con la documentación que hemos hallado y las pruebas que hemos hecho, todo indica que no se puede generar independiente; es decir, tocaría montar en cada equipo todo el soporte .NET. En pocas palabras, que no sería una buena solución. Así las cosas, la decisión que se está a punto de tomar es irnos con la otra solución que plantea Microsoft que implica montar un software adicional en cada cliente. Es una mala solución; pero sería esencialmente lo mismo que lo que hasta ahora hemos encontrado, con la ventaja de ser más simple y más seguro (entre otras cosas porque tenemos Delphi 5, no Delphi 7). De todas formas, podría alguién confirmarme si la solución "ideal" (bajo las condiciones de Microsoft), tener un DLL independiente que pueda invocarse desde Delphi sin que el cliente requiera la plataforma .NET instalada, es posible ? Gracias |
#4
|
||||
|
||||
Quizas compilando .NET a codigo de maquina en vez de msil (usando ngen o algo parecido) te pueda ayudar, al no requerir el framework para ejecutarse. Ahora bien, no he probado ngen, y no se si funciona para librerias o solo para ejecutables.
He visto alguna vez las interfases entre .NET y Win32 y no me parecen simples de realizar. De todas formas, prueba por ahi y dinos que tal te fue. Suerte!
__________________
Héctor Geraldino Software Engineer |
#5
|
||||
|
||||
Claro que se puede. Es una de las cosas "magicas" que se hacen con Delphi.
Las versiondes de Delphi 2005+ tiene la opcion de cargar directamente, pero de resto hay que usar varios trucos. El mas basico es Interop: http://www.blong.com/Conferences/Bor...nterop.htm#CCW Y el otro es p-invoke inverso: http://hallvards.blogspot.com/2007/1...oke-magic.html
__________________
El malabarista. |
#6
|
|||
|
|||
Gracias. Probaré
Hola,
Gracias por las ideas. Ahora mismo estoy muy ocupado con otros temas; pero probaré y les comentaré, a más tardar la semana entrante |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Se pueden controlar los eventos en report manager desde codigo?¿ | Alfredo | Impresión | 2 | 23-11-2007 19:06:39 |
Se pueden usar componentes creados en Delphi desde otros lenguajes .Net? | JARivera | OOP | 3 | 12-05-2007 03:22:24 |
Usar componentes desde Dlls | Albano | OOP | 6 | 19-12-2006 22:41:25 |
Dlls en Delphi | Khelma | API de Windows | 0 | 08-03-2005 15:52:08 |
Campos creados dinámicamente vs creados estáticamente | Jose_Pérez | Conexión con bases de datos | 2 | 14-04-2004 11:34:03 |
|