Einzelnen Beitrag anzeigen

Sascha_OW

Registriert seit: 4. Aug 2005
Ort: Owschlag
129 Beiträge
 
Delphi 2005 Professional
 
#1

DLL Datei, Button.Onclick Fehler

  Alt 5. Sep 2005, 16:22
Hallo,

ich spiele gerade ein bisschen mit DLL Dateien rum, spielen deshalb weil es für mich neu ist und ich damit erstmal ein bisschen zurecht koemmen muss.

also folgenden ´mein Code ist:

Delphi-Quellcode:
library Project1;

{ Wichtiger Hinweis zur DLL-Speicherverwaltung: ShareMem muß die
  erste Unit im Uses-Anweisungsteil des Interface-Abschnitts Ihrer
  Unit sein, wenn Ihre DLL Prozeduren oder Funktionen exportiert, die
  String-Parameter oder Funktionsergebnisse übergeben. Dies gilt für
  alle Strings die an und von Ihrer DLL übergeben werden --  selbst
  für diese, die in Records oder Klassen verschachtelt sind. ShareMem
  ist die Schnittstellen-Unit zur DELPHIMM.DLL, welche Sie mit Ihrer
  DLL weitergeben müssen. Um die Verwendung von DELPHIMM.DLL zu
  vermeiden, übergeben Sie String-Parameter unter Verwendung von
  PChar- oder ShortString-Parametern. }


uses
  SysUtils,
  Classes,
  Unit1 in 'Unit1.pas',
  forms,
  Dialogs,
  stdctrls;


{$R *.RES}
 var Fenster :TForm;
function addiere(zahl1, zahl2: integer): integer; stdcall;
begin
  result:=zahl1+zahl2;
end;

procedure klick (sender: TObject);
begin
   Showmessage ('');
end;

procedure erstellen;
var
    btn :TButton;
    feld : TEdit;
begin
   Fenster := TForm.Create(Application);
   Fenster.Width := 1000;
   Fenster.Height := 1000;
   Fenster.left := 0;
   Fenster.top := 0;
   Fenster.caption := 'test';
   //Fenster.show;
   Fenster.visible := true;
   btn := TButton.Create (Fenster);
   btn.Parent := Fenster;
   Btn.Height := 125;
   Btn.Width := 125;
   Btn.left := 0;
   btn.top := 0;
   btn.visible := true;
   btn.caption := 'test';
   btn.show;
   btn.OnClick := klick;
   Feld := TEdit.Create (Fenster);

end;

exports
  addiere,
  klick,
  erstellen;
begin

end.

wenn ich diese DLL dann Compiliern will kommt folgender Fehler: .. Incompatible Typen : Methodenzeiger und reguläre Pocedure




wo ist jetz der Fehler wenn ich das in einer normalen Unit machen geht das....
Sascha Schwarz
  Mit Zitat antworten Zitat