Einzelnen Beitrag anzeigen

Delphi-Laie

Registriert seit: 25. Nov 2005
1.474 Beiträge
 
Delphi 10.1 Berlin Starter
 
#8

Re: DLL-Funktionen in Lazarus/FP einbindbar / wie einzubinde

  Alt 12. Mär 2010, 11:31
Besten Dank, also man muß mindestens die Units windows und dynlibs einbinden, um DLL-Funktionen aufrufen bzw. benutzen zu können.

Zitat von creed steiger:
ist es das was du suchst?(erster Treffer)
http://www.google.de/search?hl=en&so...=Google+Search
Ja, danke, aber meine Suche mit Lazarus + DLL (die Namen der nötigen Funktionen sind am Anfang ja unbekannt) führte mich zunächst hierher, und zwar zu dem Code:

Delphi-Quellcode:
procedure TForm1.KOLForm1FormCreate(Sender: PObj);
var
  DLLHandle: THandle;
  u:Integer;
  returnhandle: PHandle;
begin
  DLLHandle := Windows.LoadLibrary(SimpleLibName);
  if (DLLHandle < HINSTANCE_ERROR) then
  begin
      Label1.Caption:='DLL konnte nicht geladen werden!';
  end;
  returnhandle := GetProcAddress(DLLHandle, 'HTCSensorOpen');
end;
Dank der beiden nunmehr bekannten und eingebundenen Units bekomme ich ein analoges Beispiel auch endlich (fehlerfrei) compiliert. So, jetzt hat man ein PHandle auf die gewünschte Funktion. Wie man damit jetzt seine Wunschfunktion aufrufen kann, ist mir allerdings leider immer noch unklar. Ich bitte um Nachsicht, daß ich mal wieder ein Anfänger bin. Ich versuche, mit dieser Funktion "GetProcAdress" eine Lösung dafür im Internet zu finden.

Zitat von JamesTKirk:
Zitat von Delphi-Laie:
Zitat von Luckie:
Wäre ja irgendwie etwas selten dämlich, wenn man mit FreePascal Windows Programme erstellen könnte, es aber keine Möglichkeit gäbe Windows Funktionen zu nutzen.
Naja, immerhin sind FreePascal/Lazarus plattformübergreifend, und so hätte es ja sein können, daß man nur Windowsprogramme erstellen kann, die Visual Controls enthalten, die auch in anderen Betriebsprogrammen bekannt sind, aber eben nicht windowsspezifische Dinge / Interna.
Wie meinst du das jetzt?
Na, ich meinte, daß es doch auch hätte sein können, daß man mit Lazarus nur solche Dinge programmieren kann, die auch plattformunabhängig oder besser plattformübergreifend vorhanden sind. Also z.B. keine Registryzugriffe. Daß es betriebsprogrammspezifische Dinge gibt, ist mir seit gestern neu, und ich sehe das natürlich positiv.
  Mit Zitat antworten Zitat