Einzelnen Beitrag anzeigen

Benutzerbild von freak4fun
freak4fun

Registriert seit: 22. Sep 2004
Ort: Hannover
1.807 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#5

Re: Frame in dll erstellen und im Hauprogramm laden

  Alt 9. Jul 2005, 23:48
Hallo ,
es ligt bestimmt an der Uhrzeit.

Die Unit in der das Formular aus der .dll aufgerufen wird:

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

  procedure DLLFormShow; stdcall;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure DLLFormShow; stdcall;
external 'Project2.dll';


procedure TForm1.Button1Click(Sender: TObject);
begin
  DLLFormShow;
end;

end.
Der Inhalt der Project2.dll:
Delphi-Quellcode:
library Project2;

{ Wichtiger Hinweis zur DLL-Speicherverwaltung: ShareMem muß sich in der
  ersten Unit der unit-Klausel der Bibliothek und des Projekts befinden (Projekt-
  Quelltext anzeigen), falls die DLL Prozeduren oder Funktionen exportiert, die
  Strings als Parameter oder Funktionsergebnisse übergeben. Das gilt für alle
  Strings, die von oder an die DLL übergeben werden -- sogar für diejenigen, die
  sich in Records und Klassen befinden. Sharemem ist die Schnittstellen-Unit zur
  Verwaltungs-DLL für gemeinsame Speicherzugriffe, BORLNDMM.DLL.
  Um die Verwendung von BORLNDMM.DLL zu vermeiden, können Sie String-
  Informationen als PChar- oder ShortString-Parameter übergeben. }

  

uses
  SysUtils,
  Classes,
  Forms;

{$R *.res}

procedure DLLFormShow;
var
  dllForm: TForm;
begin
  dllForm := TForm.Create(Application);
  try
    dllForm.ShowModal;
  finally
    dllForm.Release;
  end;
end;

exports
  DLLFormShow;

begin
end.
Benutzte Quellen:
dsdt.info
Der schon erwähnte Link.


MfG
freak
Christian
IT: Schließen Sie bitte das Fenster. User: Die Tür auch?
i++; // zaehler i um 1 erhoehen
  Mit Zitat antworten Zitat