Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-12-2006
ezindetgeio ezindetgeio is offline
Miembro
 
Registrado: dic 2006
Posts: 12
Poder: 0
ezindetgeio Va por buen camino
Hola:

Corregido lo del código. Perdón, no estoy muy habituado a foros.

He probado lo que me dice Neftali (aunque en principio va un poco con la filosofía de lo que quiero hacer puesto que se supone que es desde código donde le digo que cargue el paquete).

Aún así, marcando el checkbox y añadiendo el .bpl a pelo, no me funciona.

Muchas gracias por la ayuda que me prestáis.
Responder Con Cita
  #2  
Antiguo 11-12-2006
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.507
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por ezindetgeio
Aún así, marcando el checkbox y añadiendo el .bpl a pelo, no me funciona.
No lo entiendo; A mi me funciona perfectamente.
Me carga la clase sin problemas. El comentario era, porque para utilizar los packages dinámicos y las clases (GetClass) mediante RTTI, el programa desde el que haces la carga debe estar compilado con Runtime Packages; Vamos que no puedes mezclar un programa que compila "sin package en runtime" con la "carga dinámica de packages en runtime + Getclass".
__________________
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.
Responder Con Cita
  #3  
Antiguo 11-12-2006
ezindetgeio ezindetgeio is offline
Miembro
 
Registrado: dic 2006
Posts: 12
Poder: 0
ezindetgeio Va por buen camino
Pues nada Neftali.

Algo mal debo estar haciendo o bien al crear el BPL o bien luego.

Pruebo ahora.

Aún y todo, sigo sin comprender muy bien cómo va lo que comentas de la opción de lo de runtime en el proyecto que invoca al otro bpl.

Pero esto es debido a mi desconocimiento en Delphi. Que es cero patatero.

Sabiendo ya que funciona lo pruebo y te aviso.

¿Quizás esté creando mal el BPL?

Saludos y gracias.
Responder Con Cita
  #4  
Antiguo 11-12-2006
ezindetgeio ezindetgeio is offline
Miembro
 
Registrado: dic 2006
Posts: 12
Poder: 0
ezindetgeio Va por buen camino
Soy un inútil.

Ya funciona.

Aunque sigo sin entender cómo sabe por debajo el exe que genero todo lo relativo a la bpl, cuando me puedo llevar de ahí los .dcu y demás.

¿Cómo podría hacer para averiguar las clases y métodos que tiene un .bpl sin eso?

No entiendo muy bien lo que se hace por dentro.

Muchas gracias Neftali
Responder Con Cita
  #5  
Antiguo 11-12-2006
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.507
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por ezindetgeio
Aunque sigo sin entender cómo sabe por debajo el exe que genero todo lo relativo a la bpl, cuando me puedo llevar de ahí los .dcu y demás.
Intento explicarlo de forma simple...
El package (BPL - Borland Package Library-) contiene dentro los DCU's. Es decir, cuando creas un package con un monton de Units/Forms, la BPL resultante es equivalente (por decirlo así) a juntar todos los DCU's de esas Units/Forms y meterlos dentro.
Además Borland guarda información complementaria (RTTI) que permite acceder en ejecución a métodos/clases...
Esta información es la que se usa cuando accedes utilizando GetClass.

Échale un vistazo a este artículo de Vino Rodrigues; Es muy aclaratorio.
__________________
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.
Responder Con Cita
  #6  
Antiguo 11-12-2006
ezindetgeio ezindetgeio is offline
Miembro
 
Registrado: dic 2006
Posts: 12
Poder: 0
ezindetgeio Va por buen camino
Muchas gracias Neftali

¡Muchas gracias!

Ahora me lo leo.

Ahora el misterio es averiguar cómo hago el "casting" a esa clase y cómo uso sus métodos públicos y demás.

En ello estoy
Responder Con Cita
  #7  
Antiguo 12-12-2006
ezindetgeio ezindetgeio is offline
Miembro
 
Registrado: dic 2006
Posts: 12
Poder: 0
ezindetgeio Va por buen camino
Una cosa más

Teniendo ya esto...

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);

var

Paquete: HModule;
clase: TPersistentClass;
claseFinal : TObject;

begin

Paquete := LoadPackage('C:\Documents and Settings\aillarra\Desktop\Package2.bpl');

if Paquete <> 0 then


  begin


    clase := GetClass('TClasePrueba');


    if clase <> nil then
       ShowMessage('Bien')
    else
     ShowMessage('La clase no está');
 
    UnloadPackage(Paquete);


  end;


end;

¿cómo hago para acceder a los métodos de la clase?

un WITH claseFinal AS clase

¿Donde claseFinal es TObject y clase es TClasePrueba?

¿Cómo inicializo la clase?

Estoy algo liado con esto ya que sólo veo ejemplos con Forms...

Gracias.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Acceso a DLL aggg63 Varios 19 18-02-2013 20:49:54
Equivalencia a los bpls en .NET poliburro .NET 5 02-10-2006 22:21:49
Acceso a BD Danielle SQL 3 29-04-2006 08:40:20
Acceso a SP tgsistemas Conexión con bases de datos 1 14-09-2004 18:26:34
Creación de BPLs y DCPs GIVO Varios 1 19-06-2003 19:52:36


La franja horaria es GMT +2. Ahora son las 21:27:33.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi