![]() |
Logitech G19 LCD DLL
Hallo,
ich möchte gerne mit Delphi ein Applet für die Logitech G19 erstellen, welches zum Steuern von iTunes dient. Die Steuerung von iTunes klappt weitestgehend gut, jetzt muss das Ganze nur noch über die G19 gesteuert werden können und vorallem ein grafisches Output auf dem LCD erzeugen. Das SDK von Logitech erzählt mir etwas von einer LogitechLCD.dll und einer LogitechLCD.h Datei, welche ich verwenden kann/soll/muss. Beide Dateien liegen jetzt erstmal in meinem Projektordner. Aus dem SDK: Zitat:
Also Deklaration habe ich
Delphi-Quellcode:
function LogiLCDInit(friendlyName:string; lcdType:integer):Boolean; external 'LogitechLCD.dll'; stdcall;
angegeben, das wird aber vermutlich nicht richtig sein?! Auf jeden Fall erhalte ich den Fehler, die Deklaration unterscheide sich von vorheriger Deklaration. Und was muss ich mit der LogitechLCD.h machen? Viele Grüße! |
AW: Logitech G19 LCD DLL
Delphi-Quellcode:
...
function LogiLCDInit(friendlyName: PWChar; lcdType:integer):Bool; external 'LogitechLCD.dll'; stdcall;
Delphi-Quellcode:
if LogiLCDInit(PWChar(MeinDingsString), 0815) then ...
|
AW: Logitech G19 LCD DLL
Danke für die schnelle Reaktion,
leider erhalte ich aber immer noch den gleichen Fehler. Nochmal zum Vergleich:
Delphi-Quellcode:
implementation
// LCD function LogiLCDInit(friendlyName:PWChar; lcdType:integer):Boolean; external 'LogitechLCD.dll'; stdcall; Zitat:
Fehler gefunden (zumindest einen):
Delphi-Quellcode:
function LogiLCDInit(friendlyName:PWChar; lcdType:integer):Boolean; stdcall; external 'LogitechLCD.dll';
ist richtig. Solange nun kein Funktionsaufruf eingetragen ist, kann ich das Ganze kompilieren. Nun habe ich den Aufruf in ein OnClick eingefügt:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject); begin if LogiLCDInit(('MeinTitel'), 2) then begin // ... end else showmessage('Initialisierung fehlgeschlagen'); end; Beim / bzw. direkt nach dem Kompilieren erhalte ich nun den Fehler, dass der Einsprungpunkt nicht gefunden wurde: Zitat:
|
AW: Logitech G19 LCD DLL
Moin,
wenn Du eine Funktion aus einer C-DLL heraus importieren willst, so musst Du die Schreibweise genau einhalten (LogiLcdInit ist nicht das gleiche wie LogiLCDInit) oder Du gibst bei der Deklaration noch den Namen an. Wenn die Funktion in der DLL nun also LogiLcdInit heisst kannst Du sie so
Delphi-Quellcode:
deklarieren, oder so
function LogiLcdInit(friendlyName:PWChar; lcdType:integer):Boolean; stdcall; external 'LogitechLCD.dll';
Delphi-Quellcode:
function LogiLCDInit(friendlyName:PWChar; lcdType:integer):Boolean; stdcall; external 'LogitechLCD.dll' name 'LogiLcdInit;
|
AW: Logitech G19 LCD DLL
Vielen Dank, jetzt funktioniert es endlich :)
Noch eine generelle Frage: Auf der G19 sind ja Tasten zum steuern der Applets vorhanden und es werden Ereignisse ausgelöst, wenn eine gedrückt wird. Im Debugger sieht das so aus: Zitat:
Wie kann ich diese Events in Delphi abfangen? Ich möchte eigentlich keinen Timer darauf ansetzen, den Status der Tasten immer über die DLL Funktion abzufragen. Viele Grüße! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:33 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