FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Plugins en Delphi
Hola a todos.... bueno, luego de andar por unos foros, leer un poco sobre el tema y finalmente sentarme a programar algo se me ocurrio hacer una Unit para administrar los plugins (archivos BPL) que una aplicacion pueda usar. Con esta unit podran usar facilmente los archivos bpl utilizados en este caso como plugins.
Aca va un poco de mi trabajo:
Como usarla: 1) Para iniciar poner en el evento OnCreate de la aplicacion
2) Para usarla, una forma sencilla es cargar en un TCheckListBox los plugins (archivos bpl) de una carpeta X y en el evento onClickCheck del componente poner lo siguiente:
La ruta completa del archivo en mi caso lo saco de un TFileListBox. Si a alguno le interesa pongo un modelo de plugin para que vean el ejemplo... No cuesta nada compartir lo que uno hace... Espero que sea de utilidad... |
#2
|
||||
|
||||
Me olvide de comertarles que la unidad la hice en Delphi 2007, no la probe con otras versiones... Si alguno tiene tiempo de compilarla en alguna otra version de Delphi que me avise como les fue con esto...
|
#3
|
||||
|
||||
PLug in
interesante trabajo
deberias de compilarlo en un componente Delphi, asi es solo soltar en el Form y listo pues yo uso el JvPluginManager, que es algo parecido a lo que digo solo que con este no he podido ejecutar una funcion del HostApplication desde el plugin o viceversa, solo los procedimientos que se publican desde el plugin, o no se como hacerlo buen trabajo intentare tomar algo de tu codigo |
#4
|
||||
|
||||
Hola burgosrodas!!! La forma en que implemente este (ya viejo) proyecto era haciendo que los plugins se integren ellos al main de manera que el main es solo el framework que se encarga de iniciar los plugins. La idea es que una vez cargados los bpl la aplicación funcion como una única entidad... una forma de hacer esto era por ejemplo si lo que quiero es agregar un nuevo control visual a un TPanel que esta en el main solo que que hay que hacer es buscar el componente en la aplicacion principal mediante TPanel(Application.findcomponent('TPanel1')).... y de esa forma agregar todo lo que se quiera (componentes, funciones, procedimientos, eventos...) a la aplicacion principal.
Otra cosa que tambien ultilice fue este componente que hice http://www.clubdelphi.com/foros/show...t=tmemofilemap para comunicar y pasar datos entre 2 plugins o mas y de esa manera poder llamar a un plagin desde otro mediante esta interface.... El año pasado me descargue los componentes TPascalScript con los cuales se me ocurrio hacer un framework de manera tal que los formularios y el código de los mismos este en una base de datos, entonces se esta forma la aplicacion es totalmente dinamica.... :P |
#5
|
||||
|
||||
Hola
que bien, es justo lo que estoy tratando de hacer también tengo una aplicación que simplemente carga Plug's y los administra, pero las funcionalidades están es en los plugins (inclusive tablas conexiones y Querys). desde el plugin puedo acceder a los forms del main mediante HostApplication.FindComponent('Objeto_a_Buscar') lo que no logro es ejecutar una funcion del plugin desde la aplicacion principal, desafortunadamente ya tiré mucho codigo con los JEDI y su PluginManager como para implementar el que propones, pero intentare heredar del plugin manager y añadir algo de tu codigo mis BPL's los guardo en la base de datos y los cargo al inicio de la aplicacion. muchas gracias saludos desde Colombia. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Plugins para Aplicaciones delphi! | fide | API de Windows | 20 | 20-03-2008 16:25:56 |
utilizar plugins gráficos desde D7 | tito_lolo | Varios | 0 | 05-06-2007 14:12:36 |
Desarrollo con futuro plugins | ANG4L | Varios | 18 | 05-06-2007 13:34:58 |
Plugins para neoBook | chico_bds | Varios | 1 | 23-03-2007 06:17:40 |
Plugins | saul_montalvo | Varios | 2 | 19-08-2003 18:32:49 |
|