FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Problema con ventanas desde dll
Hola buen día gente. Le comento un problema que tengo en delphi 10.3 a ver si alguien me hecha alguna luz sobre el tema.
Tengo un sistema de gestión que estoy reescribiendo en delphi 10.3 para windows, los distintos módulos del sistema están en dlls, o sea hay una dll para los productos, una para ventas, una para proveedores, etc. El problema que tengo es que si desde una form en alguna de esas dlls muestro alguna otra form esperando un resultado o tan simplemente un messagebox con algún mensaje, al cerrarse alguna de estas últimas el control no vuelve a la form que la lanzó y tengo que hacer click sobre la form que la lanzó para que esta retome el control. A alguien le pasó algo así? Desde ya muchas gracias |
#2
|
||||
|
||||
Creo que hasta cierto punto es lógico, porque el código de tu DLL no deja de ser como una aplicación independiente.
No explicas cómo abres los formularios de la DLL, puedo imaginar que la cargas con LoadLibrary. Otra duda es porqué no utilizar BPL's. En el caso de DLL's creo que puedes realizar la sincronización utilizandodo los Handles de tu aplicación en delphi (aplicación, form principal,...)
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
|||
|
|||
Neftali, muchas gracias por responder. Si exactamente lo hago con loadlibrary, esto no me pasaba con delphi 6, de todas formas no tengo problemas en cambiar. Nunca lo había hecho con bpl's pero puedo cambiarlo
El código que tengo en la dll es este Application.Handle := AppHandle; dmArticulos := TdmArticulos.Create(Application); dmArticulos.conArticulos.SharedCliHandle := DBHandle; dmArticulos.conArticulos.Open; frmArticulos := TfrmArticulos.Create(Application); frmArticulos.Show; De nuevo muchas gracias |
#4
|
||||
|
||||
Si ese código o formulario sólo lo vas a utilizar en una aplicación hecha en delphi, yo te recomendaría que utilizaras packages (BPLs).
Piensa (no sé quien dijo esto) que "una BPL es como una DLL con esteroides". Si te decides a usar BPL's, luego puedes decidir si las linkas/cargas de forma estática o dinámica. A malas siempre puedes usarla como una DLL, incluso la puedes seguir cargando con LoadLibrary (aunque pierdes funcionalidad). Si por el contrario ese código o formularios tienes pensado o hay la posibilidad de que los utilices en otras aplicaciones (otros lenguajes) no te queda otra que seguir utilizando DLL's.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#5
|
|||
|
|||
No la verdad que todo se usa dese aplicaciones que desarrollo en Delphi. Habrá en el foro algún ejemplo de como usar de este modo las BPL's? así busco
De nuevo muchas gracias |
#6
|
||||
|
||||
Puedes hacer pruebas con packages.
Aquí tienes un artículos que explica (o lo intenta) las diferentes opciones entre DLL's y BPL's. Y entre carga estática y dinámica. También tienes ejemplos sencilos. https://neftali.clubdelphi.com/dlls-...es-en-runtime/ Como dije al final una BPL y similar a una DLL, pero si vas a utilizarla desde delphi tiene ventajas, ya que puedes utilizar RTTI Aunque ya es un poco antiguo, aquí tienes otro artículo que habla de cómo trabajar con BPLs de forma dinámica, implementando un sistema de Plugins (carga dinámica de packages). https://neftali.clubdelphi.com/siste...elphi-parte-2/
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#7
|
|||
|
|||
Muchas gracias
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Problema con ventanas MDI al acceder a base de datos | hagsoft | Varios | 11 | 13-08-2014 20:52:35 |
Problema con el manejo de las ventanas dentro de la aplicacion | maxibaco | Varios | 2 | 28-11-2006 21:01:09 |
problema con ventanas modales | droguerman | OOP | 1 | 19-09-2006 00:22:39 |
Problema con ventanas y mensajes | m@kio | Varios | 1 | 30-06-2005 12:47:52 |
Problema con ventanas MDIChild | rafadrover | Varios | 2 | 07-08-2003 09:39:09 |
|