Ir al contenido


Foto

Error en procedimiento.


  • Por favor identifícate para responder
No hay respuestas en este tema

#1 look

look

    Advanced Member

  • Miembros
  • PipPipPip
  • 418 mensajes
  • LocationLa Ceiba-Atlantida-Honduras

Escrito 17 junio 2011 - 11:52

tengo el siguiente procedimiento para llamar un formulario dentro de un bpl.



delphi
  1. procedure TFrmPrincipal.SpeedButton3Click(Sender: TObject);
  2. var Factura:procedure;
  3. begin
  4.     try
  5.       PckgModuleFac := LoadPackage('ModFac.bpl');
  6.       if PckgModuleFac <> 0 then
  7.       @Factura := GetProcAddress(PckgModuleFac, 'Factura');
  8.       Factura;
  9.     except
  10.       ShowMessage('Error al cargar ModFac.Bpl ');
  11.     end;
  12. end;



y en el formulario de factura exporto el procedimiento de la siguiente manera.



delphi
  1. procedure Factura;
  2. begin
  3.   if NOT Assigned(FrmFactura) then
  4.   Begin
  5.     FrmFactura := TFrmFactura.Create(Application);
  6.     FrmFactura.Show;
  7.     EXIT;
  8.   END
  9.   ELSE;
  10.     FrmFactura.Show;
  11.     FrmFactura.WindowState := wsMaximized;
  12. end;
  13. exports Factura;



he tradado de hacer esto pero me da error:



delphi
  1.   procedure TFrmPrincipal.SpeedButton3Click(Sender: TObject);
  2.   var Factura(tipo:string):procedure;
  3.   begin
  4.       try
  5.         PckgModuleFac := LoadPackage('ModFac.bpl');
  6.         if PckgModuleFac <> 0 then
  7.         @Factura(tipo:string) := GetProcAddress(PckgModuleFac, 'Factura');
  8.         Factura('test');
  9.       except
  10.         ShowMessage('Error al cargar ModFac.Bpl ');
  11.       end;
  12.   end;
  13.  


 
  y en el formulario de factura exporto el procedimiento de la siguiente manera.
 
 

delphi
  1.   procedure Factura(tipo:string);
  2.   begin
  3.     if NOT Assigned(FrmFactura) then
  4.     Begin
  5.       FrmFactura := TFrmFactura.Create(Application);
  6.       FrmFactura.Show;
  7.       EXIT;
  8.     END
  9.     ELSE;
  10.       FrmFactura.Show;
  11.       FrmFactura.WindowState := wsMaximized;
  12.   end;
  13.   exports Factura(tipo:string);
  14.  



lo que quiero hacer es mandarle un parametro string al procedimiento.

Saludos!!!


  • 0




IP.Board spam blocked by CleanTalk.