How to use dlls
-
- Beiträge: 465
- Registriert: Sa 21. Aug 2010, 21:30
- OS, Lazarus, FPC: Windows 7 Ultimate (L 1.2.2 FPC 2.6.4 32-bit)
- CPU-Target: 64-Bit
- Wohnort: nahe Bremen
- Kontaktdaten:
How to use dlls
Also ich bin ja noch relativ neu und wollte mal fragen wie man dlls richtig mit Lazarus verwendet
hauptsächlich wäre erstmal meine Frage was ich machen muss damit ich diese benutzen kann also wie ich diese "verknüpfen" kann
und auch ihre Funktion nutzen kann.
wenn ich zum beispiel die bass.dll hab(von u4seen oda so), ist ja wenn ich das richtig sehe ganz gut dokumentiert...
da steht dann z.B. "BOOL BASS_Start();" für Play
kann man das dann so benutzen?
procedure BOOL BASS_Start(); stdcall; external 'bass.dll' name 'play';
oder ist das noch schwerer oder ienfach nen komplett falscher ansatz?
hauptsächlich wäre erstmal meine Frage was ich machen muss damit ich diese benutzen kann also wie ich diese "verknüpfen" kann
und auch ihre Funktion nutzen kann.
wenn ich zum beispiel die bass.dll hab(von u4seen oda so), ist ja wenn ich das richtig sehe ganz gut dokumentiert...
da steht dann z.B. "BOOL BASS_Start();" für Play
kann man das dann so benutzen?
procedure BOOL BASS_Start(); stdcall; external 'bass.dll' name 'play';
oder ist das noch schwerer oder ienfach nen komplett falscher ansatz?
www.mcpatcher.net | www.hoeper.me
-
- Lazarusforum e. V.
- Beiträge: 3178
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: How to use dlls
In C werden Funktionen ein wenig anders deklariert als in Pascal:
Die externe Referenzierung ist richtig. Daher wäre wohl bei dir richtig:
- Rückgabetyp (void, wenn keiner -> procedure)
- Name
- Parameterliste
- Typ
- Parametername
Die externe Referenzierung ist richtig. Daher wäre wohl bei dir richtig:
Code: Alles auswählen
function BASS_Start(): Longbool; cdecl; external 'bass.dll' name 'play';
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
-
- Beiträge: 958
- Registriert: Mo 11. Sep 2006, 22:56
Re: How to use dlls
Bei Bass sind sehr gute Delphi Demos dabei,die solltest du dir mal anschauen.
(mit dem Konverter geht das relativ gut)
(mit dem Konverter geht das relativ gut)
Re: How to use dlls
Anonsten kommt mit FPC noch das wunderbare Tool "h2pas". Damit kann man aus C Headern Pascal Bindings erstellen.
Klappt recht gut, ein bisschen Nachbearbeitung ist manchmal erforderlich.
Klappt recht gut, ein bisschen Nachbearbeitung ist manchmal erforderlich.
-
- Beiträge: 465
- Registriert: Sa 21. Aug 2010, 21:30
- OS, Lazarus, FPC: Windows 7 Ultimate (L 1.2.2 FPC 2.6.4 32-bit)
- CPU-Target: 64-Bit
- Wohnort: nahe Bremen
- Kontaktdaten:
Re: How to use dlls
gibts da irgendwo ne dokumentation zu?theo hat geschrieben:Anonsten kommt mit FPC noch das wunderbare Tool "h2pas". Damit kann man aus C Headern Pascal Bindings erstellen.
Klappt recht gut, ein bisschen Nachbearbeitung ist manchmal erforderlich.
www.mcpatcher.net | www.hoeper.me
Re: How to use dlls
http://lmgtfy.com/?q=freepascal+h2pas" onclick="window.open(this.href);return false;Bauer321 hat geschrieben: gibts da irgendwo ne dokumentation zu?
-
- Beiträge: 465
- Registriert: Sa 21. Aug 2010, 21:30
- OS, Lazarus, FPC: Windows 7 Ultimate (L 1.2.2 FPC 2.6.4 32-bit)
- CPU-Target: 64-Bit
- Wohnort: nahe Bremen
- Kontaktdaten:
Re: How to use dlls
hört sich ganz gut an guck ich mal morgen genauer an
www.mcpatcher.net | www.hoeper.me
-
- Beiträge: 657
- Registriert: Sa 9. Jan 2010, 17:32
- OS, Lazarus, FPC: Linux 2.6.x, SVN-Lazarus, FPC 2.4.0-2
- CPU-Target: 64Bit
Re: How to use dlls
Wenn du das ".dll" noch weglässt, hast du's sogar plattformunabhängig gelöst.Bauer321 hat geschrieben: kann man das dann so benutzen?
procedure BOOL BASS_Start(); stdcall; external 'bass.dll' name 'play';
oder ist das noch schwerer oder ienfach nen komplett falscher ansatz?
-
- Beiträge: 465
- Registriert: Sa 21. Aug 2010, 21:30
- OS, Lazarus, FPC: Windows 7 Ultimate (L 1.2.2 FPC 2.6.4 32-bit)
- CPU-Target: 64-Bit
- Wohnort: nahe Bremen
- Kontaktdaten:
Re: How to use dlls
hmm joa nur das bringt nicht so viel da der rest meist windows only ist^^(also jetzt speziell auf mich bezogen)
www.mcpatcher.net | www.hoeper.me
-
- Beiträge: 657
- Registriert: Sa 9. Jan 2010, 17:32
- OS, Lazarus, FPC: Linux 2.6.x, SVN-Lazarus, FPC 2.4.0-2
- CPU-Target: 64Bit
Re: How to use dlls
Dann machst du's genau so, wie du's geschrieben hast. (manchmal sind die Funktionen aber cdecl statt stdcall)Bauer321 hat geschrieben:hmm joa nur das bringt nicht so viel da der rest meist windows only ist^^(also jetzt speziell auf mich bezogen)