PDA

Ver la Versión Completa : Plugins para Aplicaciones delphi!


fide
07-06-2007, 18:16:05
Hola. Quiciera que me ayudaran y me dieran ideas acerca de como hacer plugins para mis aplicaciones que me permitan añadir nuevas funcionalidades al programa..

No importa que tipo de programa sea solo quiero algun ejemplito bueno o un buen debate.

Gracias de antemano!!

roman
07-06-2007, 18:29:49
Paquetes dinámicos (dynamic packages en inglés). Busca en estos foros que ya antes se ha tocado el tema. Hay por ahí algunos artículos ya clásicos al respecto, unos en CodeGear de Vino Rodrigues, otros en delphi.about.

// Saludos

Neftali [Germán.Estévez]
07-06-2007, 18:56:58
Pues justo en otro día limpiando los adjuntos que había subido al ClubDelphi (que ya ocupaban mucho) estuve revisando los ejemplos realizados y uno de ellos era sobre plugins en Delphi usando packages dinámicos como dice Román.

Lo he subido al FTP (http://www.terawiki.clubdelphi.com/).
Delphi_Plugins_Con_Packages_Dinamicos.zip (http://www.terawiki.clubdelphi.com/archivos/Delphi-Win32/Ejemplos/Delphi_Plugins_Con_Packages_Dinamicos.zip)

roman
07-06-2007, 19:21:45
Estoy viendo tu ejemplo. No sé si hago algo mal, pero si coloco el bpl con o sin dcp de un plugin en el directorio plugins, sí lo carga, pero al seleccionarlo aparece un mensaje que dice "La clase para acceder al plug-in parece que no está correctamente registrada.

// Saludos

jhonny
07-06-2007, 19:33:25
Estoy viendo tu ejemplo. No sé si hago algo mal, pero si coloco el bpl con o sin dcp de un plugin en el directorio plugins, sí lo carga, pero al seleccionarlo aparece un mensaje que dice "La clase para acceder al plug-in parece que no está correctamente registrada.

// Saludos

Me imagino que no es pero... que tal si intentas cambiando el {$IMPLICITBUILD OFF} del paquete a ON. Repito, no estoy seguro de que asi sea pero nada se pierde con probar ¿No?

Neftali [Germán.Estévez]
07-06-2007, 19:40:12
No sé si hago algo mal, pero si coloco el bpl con o sin dcp de un plugin en el directorio plugins, sí lo carga, pero al seleccionarlo aparece un mensaje que dice "La clase para acceder al plug-in parece que no está correctamente registrada.

En el programa principal debe estar activada la opción "Build with runtime packages".

fide
07-06-2007, 19:44:10
Oye, muchas gracias por la ayuda. Pero lo que sucede es que tengo Internet Medio Full y no me deja acceder a esos links..

No hay posivilidad de traer los adjuntos al mismo clubdelphi para ver si los bajo??

O de lo contrario que publiquen el codigo justo aqui??

Gracias desde ahora!

roman
07-06-2007, 19:45:10
En el programa principal debe estar activada la opción "Build with runtime packages".

Ya, ya. Había dado por sentado que ya estaba marcada. Gracias.

// Saludos

fide
07-06-2007, 20:00:39
Repito, muchas gracias por la ayuda. Pero lo que sucede es que tengo Internet Medio Full y no me deja acceder a esos links..

No hay posivilidad de traer los adjuntos al mismo clubdelphi para ver si los bajo??

O de lo contrario que publiquen el codigo justo aqui??

jhonny
07-06-2007, 20:20:44
Repito, muchas gracias por la ayuda. Pero lo que sucede es que tengo Internet Medio Full y no me deja acceder a esos links..

No hay posivilidad de traer los adjuntos al mismo clubdelphi para ver si los bajo??

O de lo contrario que publiquen el codigo justo aqui??

Bueno, lo que sucede es que el ejemplo ya están en el club delphi... entonces quizá por eso nos confunde un poco tu inquietud, además solo es cuestión de que des click en el siguiente enlace tal y cual como te lo indico Neftali...
http://www.terawiki.clubdelphi.com/archivos/Delphi-Win32/Ejemplos/Delphi_Plugins_Con_Packages_Dinamicos.zip

fide
07-06-2007, 20:44:38
Oyeeee, es verdad que el link trabaja a las mil maravillas!

Muchisimas Gracias a todos.!

:D:D:D

ixMike
11-06-2007, 19:55:54
Ese problema (el de los plugins) ya me lo planteé una vez, y pensé que la solución era con las DLLs, copiando nuevas DLLs en la carpeta del programa para que al iniciarlo las detectara y añadiera nuevas funcionalidades.

Tuve algunas dudas que resolví aquí (http://www.clubdelphi.com/foros/showthread.php?t=33802).

Espero que esto también te sea de ayuda.

Saludos a todos. ;)

Neftali [Germán.Estévez]
12-06-2007, 11:48:08
Ese problema (el de los plugins) ya me lo planteé una vez, y pensé que la solución era con las DLLs, copiando nuevas DLLs en la carpeta del programa para que al iniciarlo las detectara y añadiera nuevas funcionalidades.

Bueno si se puede con DLL, se puede con BPL's, ya que una BPL no es más que una DLL "mejorada" y con funcionalidades añadidas.
Lo que hicieras para DLL's seguro que funciona casi al 95% con BPL's (me refiero al código).

fide
01-03-2008, 08:39:14
Pero, como puedo crear los plugins con dll?
Por favor denme alguna idea, si alguien ya lo ha hecho pues que me lo diga, ayudenme con eso please!

Lo que necesito es hacerlo con Dlls.

ixMike
01-03-2008, 14:59:39
En el enlace que te puse viene hasta con un ejemplo. La única "funcionalidad" que tiene es decir el nombre del plugin, el autor, y la versión del mismo, pero añadiendo nuevas funciones, puedes añadirle nuevas funcionalidades. Léete a fondo el enlace.


Salu2.

dec
01-03-2008, 15:19:59
Hola,

Por mi parte tengo por aquí unas pruebas que hice hace algún tiempo. Estas consitían en lograr un componente para controlar plugins, precisamente, de otro cierto tipo, que también se incluye en las pruebas de marras. No sé si te servirá de algo. Está basado en código y componentes de otras personas. Las pruebas no están "terminadas" ni nada por el estilo, pero, en fin, las adjunto por si pueden servirte.

http://www.dec.clubdelphi.com/clubdelphi/samples/plugcomp.zip

PD. Enlazo al archivo, porque mi cuota para archivos adjuntos se acabó. :eek: :rolleyes: :p

fide
15-03-2008, 21:45:54
Muchas gracias. He logrado implementar un sistema de plugins con packages dinamicos, partiendo del ejemplo que esta en la pagina de neftali. El unico problema, si es que asi se puede llamar, que yo veo en todo eso de los packages, es que tengo que cargar con los siguientes bpl.

"rtl70.bpl", claro que esto esta good. Pero no se por que con vcl70.bpl. aunque pensando bien, todos los componentes del form que creo dinamicamente dentro del package del plugin, deben de estar en esa vcl70.bpl.

Otra cosa, me he dado cuenta que mientras mas componentes tengo instalador, pues mas grande es el vcl70.blp, pero que ademas. Si inserto un componente de 3ros, me tengo que llevar ahi sus bpls.

Eso esta medio fula, pero bueno, es el precio por tanta funcionalidad...

fide
16-03-2008, 15:33:28
Hola,

Por mi parte tengo por aquí unas pruebas que hice hace algún tiempo. Estas consitían en lograr un componente para controlar plugins, precisamente, de otro cierto tipo, que también se incluye en las pruebas de marras. No sé si te servirá de algo. Está basado en código y componentes de otras personas. Las pruebas no están "terminadas" ni nada por el estilo, pero, en fin, las adjunto por si pueden servirte.

http://www.dec.clubdelphi.com/clubdelphi/samples/plugcomp.zip

PD. Enlazo al archivo, porque mi cuota para archivos adjuntos se acabó. :eek: :rolleyes: :p

Oyeme, esos componentes que estan en el link estan de marabillas dec. Muchas gracias a ti y a todos los demas por la gran ayuda que me han brindado...

Neftali [Germán.Estévez]
17-03-2008, 09:50:19
me he dado cuenta que mientras mas componentes tengo instalador, pues mas grande es el vcl70.blp, pero que ademas. Si inserto un componente de 3ros, me tengo que llevar ahi sus bpls.

(1) No entiendo cómo puede ir creciendo el paquete VCL70.BPL; Se supone que es un paquete de Delphi y no debería alterarse aunque instales nuevos componentes (salvo que los estés instalando en ese paquete, cosa que veo poco probable...)

(2) Si añades componentes de terceros, deberás añadir esas BPL's a la instalación.

fide
17-03-2008, 20:46:06
Pues no te miento. Despues que corro el programa en mi PC, trabaja. Pero cuando lo migro a otra PC, este me dice que necesito VCL70.bpl.
Se la pongo, lo ejecuto y entonces me dice que le hace falta rtl70.bpl. Pero ademas, como uso algunos componentes de la JedyVCL, me dice que necesito la bpl que es donde estan esos componentes...

Eso es lo que sucede...

fide
20-03-2008, 16:25:56
Ya me he puesto a trabajar arduamente en http://wiki.clubdelphi.com, más especificamente en la sección de plugins. Miren el enlace (http://wiki.clubdelphi.com/wiki/index.php/Categor%C3%ADa:Plugins) y ayudenme en la corrección de los formatos. Es que soy novato editando paginas wiki....