Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Funktion einer DLL richtig anbinden und aufrufen (https://www.delphipraxis.net/131079-funktion-einer-dll-richtig-anbinden-und-aufrufen.html)

Moony 18. Mär 2009 13:28


Funktion einer DLL richtig anbinden und aufrufen
 
Hallo Leute,

ich scheitere hier an einer Sache, die mir nicht so ganz begreiflich werden will. Ich habe eine DLL die Ich anbinden will. Habe die benötigten Funktionen sowie mögliche Rückgabewerte deklariert:

In C:

Int MeineFunktion(LONG Idx, LONG Item, LPBYTE pItemBuffer, LONG mySize)

In Delphi sieht das dann meiner Meinung nach so aus:
function MeineFunktion(Idx, Item: LongInt; pItemBuffer: PBYTE; mySize: LongInt): LongInt; far; stdcall; external myLib name '_MeineFunktion'

Das was mir Probleme bereitet ist, den Buffer zu füllen. Die Daten sind entweder irgendwelche Dateien oder Strings. Habe das versucht über ein array of Byte zu machen, aber dann bekomme ich eine Exception bei den Dateien. Wie kann ich das am besten lösen?

Danke, Moony

Luckie 18. Mär 2009 18:12

Re: Funktion einer DLL richtig anbinden und aufrufen
 
Welche Aufrufkonvention hat die Funktion in der DLL? Das muss nicht standardmäßig stdcall sein.

Dann lass mal das far weg.

Und zu guter letzt, wäre es noch hilfreich den Cod ezu sehen, wie du versuchst die Funktion in Delphi aufzurufen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:32 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz