Thema: Delphi Mit DLLs arbeiten

Einzelnen Beitrag anzeigen

Christian18

Registriert seit: 9. Dez 2003
Ort: Hamburg
1.279 Beiträge
 
#1

Mit DLLs arbeiten

  Alt 11. Jan 2008, 20:52
Hallo,

ich habe eine Funktion programmiert, die mir einen bestimmten String zusammen baut. Diese Funktion möchte ich in eine DLL auslagern. Ich habe irgendwie gehört, dass es nicht funktionieren soll. Ich habe auch schon vor einiger zeit mal was probiert und das hat auch nicht funktioniert. Ist es überhaupt möglich mit Dlls String übergeben zu lassen?

so baue ich meine DLLs immer aus:

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;

function Rechne(a, b : Integer) : Integer;
begin
  Result:=a + b;
end;

exports
      Rechne name 'Rechne';

begin
end.
Importiert wird im Programm mit folgender Definition:
Rechne(a, b : Integer) : Integer; external 'Project1name 'Rechne';
  Mit Zitat antworten Zitat