Ver Mensaje Individual
  #4  
Antiguo 09-09-2019
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Reputación: 20
movorack Va camino a la famamovorack Va camino a la fama
En el ejemplo que te dí, la BPL como tal no la invocas.

Es decir, no la inicializas como a una dll

Código Delphi [-]
  Handle := LoadLibrary('libraryname');
  if Handle <> 0 then
  begin
    @GetTime := GetProcAddress(Handle, 'GetTime');
    if @GetTime <> nil then
    begin
      GetTime(Time);
      with Time do
        Writeln('The time is ', Hour, ':', Minute, ':', Second);
    end;
    FreeLibrary(Handle);
  end;

En ese ejemplo se usa en el proyecto como una unidad mas y como se compilas con la opción "Link with runtime packages", en "Runtime packages" está establecido que cargará la BPL PkgForm0 en tiempo de ejecución. Lo que hace que el ejecutable generado no contenga el formulario del cual se hereda sino que esté dentro de la BPL.

Para tu caso, puedes agregar un formulario en una BPL y solo usarlo, como lo harías normalmente.

Código Delphi [-]
Unit UForm1;

..

implementation

uses
  UForminBPL;

..

TForm1.ButtonClick1(Sender: TObject);
begin
  with TFormInBPL.Create(Application) do
  try
    if ShowModal then
    begin
      //
    end;
  finally
    free;
  end;
end;

Tip: Puedes establecer que en Debug, no use los paquetes en tiempo de ejecución. Eso te ayuda a modificar la BPL y realizar las pruebas antes de generar el paquete completo para release
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita