![]() |
C(++) -> Delphi: IN const PVOID pContext...
Hi,
hab hier folgende C(++) Funktion (?):
Code:
Soweit komme ich in Delphi:
typedef DWORD (WINAPI *OnButtonsCB)(IN int device,
IN DWORD dwButtons, IN const PVOID pContext);
Delphi-Quellcode:
Ist das soweit richtig? Was fang ich mit diesem PVOID an? Könnte das ein Pointer auf eine Procedure sein?
function OnButtonsCB(device: Integer; dwButtons: DWORD;
const pContext: {PVOID}): DWORD; Mfg |
Re: C(++) -> Delphi: IN const PVOID pContext...
PVOID = Pointer to void = void*, also in Delphi einfach Pointer.
WINAPI bedeutet außerdem, wenn ich mich nicht irre, dass du deine Funktion als stdcall deklarieren musst. |
Re: C(++) -> Delphi: IN const PVOID pContext...
Hi OregonGhost,
ein einfacher Pointer, ok. :D Das mit WINAPI und stdcall wird wohl auch sein, da eine *.lib-Datei benötigt wird. |
Re: C(++) -> Delphi: IN const PVOID pContext...
Hallo,
was hat denn eine Lib damit zu tun ? AFAIK ist die Lib in c++ in diesem Fall dafür, dass du nach dem Einbinden direkt die Dll-Funktionen aufrufen kannst. Heiko |
Re: C(++) -> Delphi: IN const PVOID pContext...
Hieße das, dass ich die .lib nicht mit Delphi ansprechen kann?
|
Re: C(++) -> Delphi: IN const PVOID pContext...
Zitat:
Gruß Der Unwissende |
Re: C(++) -> Delphi: IN const PVOID pContext...
Hi,
dann hol ich ein bisschen weiter aus. Ich versuche gerade die Header-Datei des Logitech-G15-SDKs zu übersetzen. Dazu gibt es eine lglcd.h, sowie diese lglcd.lib. In C(++) benutzen die das dann so:
Code:
Ich möchte, per Delphi, das LCD der G15-Tastatur ansteuern.
// include the Logitech LCD SDK header
#include "../../include/lglcd.h" // make sure we use the library #pragma comment(lib, "lgLcd.lib") |
Re: C(++) -> Delphi: IN const PVOID pContext...
Mit eine lib wird Dir das nicht ohne weiteres gelingen. Wenn die durch einen Borland-Compiler erstellt wurde ist Delphi glaube ich durchaus dazu in der Lage die zu verwenden, bei jedem anderen Compiler hingegen nicht. Der Code ist eben C++ spezifisch gelinkt wurden, da werden die Dinge entsprechend etwas anders aussehen als in Delphi (Namensräume, andere Klassen, Templates, ...), so dass Delphi die eben nicht verwenden kann.
|
Re: C(++) -> Delphi: IN const PVOID pContext...
Hi,
dann wird mein vorhaben wohl scheitern, da die .lib in C(++) geschrieben wurde. Jedoch, fällt mir gerade ein, haben andere es schon übersetzt. Jetzt versteh ich auch, warum die noch über eine DLL gehen. Die DLL wurde dann wohl in C(++) geschrieben und linkt diese .lib mit ein. |
Re: C(++) -> Delphi: IN const PVOID pContext...
Code:
uebersetzt zu:
typedef DWORD (WINAPI *OnButtonsCB)(IN int device,
IN DWORD dwButtons, IN const PVOID pContext);
Delphi-Quellcode:
type
OnButtonsCB = function(device: Integer; dwButtons: DWORD; pContext: Pointer): DWORD; stdcall; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:45 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