![]() |
LPVoid > Delphi
Hallo miteinander,
übersetze gerade ein C Headerfile von einer DLL nach Delphi. Jetzt gibt es da ein Funktionsaufruf der so aussieht BRADI_API BOOL WINAPI AdiGetKeyMatrix(LPVOID pKeyMatrix, DWORD Size); Mein Problem ist nun diese LPVOID pKeyMatrix zu übersetzen. Es handelt sich hierbei um ein Array von max. 16 Byte, das von der Funktion beschrieben wird. Den Rest habe ich schonmal so übersetzt: function AdiGetKeyMatrix( ???; Size: DWORD ): Boolean; stdcall ; external 'brADI.dll'; Wer kann mir da weiterhelfen? Gruß Frank |
Re: LPVoid > Delphi
Hallo Frank,
LPVOID entspricht Pointer. Wenn es sich um ein Array fester Länge handeln würde, dann hättest du wohl einen entsprechenden typisierten Pointer deklariert und verwendet. Vermutlich wird die wahre Größe im zweiten Parameter übergeben. Da ist es dann besser, wenn du einen typisierten Pointer auf das erste Element des Arrays übergibst. Du erreichst damit ein wenig Typsicherheit. Freundliche Grüße |
Re: LPVoid > Delphi
Hallo marabu,
versteh ich das jetzt richtig? Einen typisierten Pointer machen type pPointr: @LongWord; und den in der Funktion übergeben - aber wie? function AdiGetKeyMatrix( var pPointr ??? ; Size: DWORD ): Boolean; stdcall ; external 'brADI.dll'; Da bin ich mir jetzt nicht sicher Danke schon mal Frank |
Re: LPVoid > Delphi
Eher so:
Delphi-Quellcode:
const
bradi = 'brADI.dll'; function AdiGetKeyMatrix( pKeyMatrix: PLongWord; Size: DWORD ): Boolean; stdcall ; external bradi; |
Re: LPVoid > Delphi
Danke marabu,
werd ich so mal einsetzen - zum Testen komm ich dann wohl erst morgen. Da sind noch 100000 andere Funktionen zum Übersetzen. Gruß Frank |
Re: LPVoid > Delphi
|
Re: LPVoid > Delphi
Danke für den Tipp, aber der konvertiert wie alle anderen Konverter auch nur Müll!
Mittlerweile habe ich dann auch die Datei von Hand übersetzt, zum Glück waren das Meiste an dem Headerfile nur Kommentare. Gruß Frank |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:51 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz