PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : .lib-Datei einbinden in ein Delphi-Programm?


aths
2011-10-25, 16:48:36
Noobfragen, da ich sowas bisher noch nicht gemacht habe:

Ich habe eine Bibliothek die offenbar für C oder C++ gedacht ist, bestehend aus einer .h und einer .lib-Datei. Delphi kann ja keine .h-Dateien lesen. Muss man zur Verwendung die gesamte .h-Datei für Delphi umschreiben oder reicht es, die Funktionen extern zu deklarieren die man nutzt? Weiß jemand ob und wie man Delphi überreden kann, außerdem die entsprechende .lib-Datei zu nutzen?

Nagelbrett
2011-10-26, 18:35:36
Die .h Datei brauchst du prinzipiell nicht komplett übersetzen. Wenn du einzelne Funktionen aus der Library als external bei dir deklarierst, solltest du diese bereits nutzen können. Allerdings kann die .h natürlich noch structs (Records?) oder Konstanten enthalten, ohne die es schwierig werden könnte, die Funktionen richtig zu benutzen, falls diese beispielsweise ein solches struct als Parameter erwarten.
Prinzipiell also einfach sowas wie: procedure Bla; external 'blubb.lib';

Edit: evtl. musst du noch eine andere calling convention angeben (z. B. cdecl; vor das external), das hängt davon ab, wie die Lib gebaut wurde.