Einzelnen Beitrag anzeigen

mjenke

Registriert seit: 28. Mär 2003
Ort: Bonn
131 Beiträge
 
#1

Klassen aus einer DLL nutzen?

  Alt 8. Nov 2007, 06:21
Guten Morgen, alle miteinander!

Ich habe folgendes Problem: Von einem anderen Dienstleister habe ich eine DLL zur Verfügung gestellt bekommen, in der Klassen definiert sind. Diese Klassen will ich nutzen. Aber wie mache ich das?

Wenn ich veröffentlichte Methoden aus einer DLL nutzen möchte, kann ich das folgendermaßen tun (am Beispiel einer MathType-DLL):

Delphi-Quellcode:
type

  TMTInitAPI = function (
    options: SmallInt;
    timeout: SmallInt ): Integer; stdcall;

[...]

implementation

[...]
constructor TMathType.Create;
var
  InitAPI: TMTInitAPI;
begin

  FHandleWLL := LoadLibrary ( 'C:\Programme\MathType\MathPage\MathPage.wll' );
  FHandleDLL := LoadLibrary ( 'C:\Programme\MathType\System\MT5.dll' );

  [...]

  @InitAPI := GetProcAddress ( FHandleWLL, 'MTInitAPI' );
  if @InitAPI <> nil then ShowMessage ( 'InitApi: ' + IntToStr ( InitAPI ( mtinitLAUNCH_NOW, -1 ) ) )
  else ShowMessage ( 'InitApi ist nil' );

  [...]

end;
Wichtig ist hierbei natürlich der Part um "GetProcAdress". Aber wie gehe ich vor, wenn es sich um Klassen handelt?

Matthias Jenke
  Mit Zitat antworten Zitat