Übersetzung von Tastenname über api_GetKeyNameText
Übersicht

airblasterBetreff: Übersetzung von Tastenname über api_GetKeyNameText |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi,
ich habe versucht über api_GetKeyNameText (aus der des öfteren geposteten user32.decls) eine funktion zu basteln die den Namen einer gedrückten taste in der aktuellen Landessprache zurückgibt. Irgendwie funktioniert das ganze aber nicht: BlitzBasic: [AUSKLAPPEN] Global KBS_tmpBuffer = CreateBank(32) Wenn ich den MSDN-Eintrag zu GetKeyNameText ansehe müsste der Code doch eigentlich stimmen... Hat jemand eine Idee woran es liegen könnte? EDIT: damit hier nichts falsches rauskopiert wird habe ich mal die falsche Zeile BlitzBasic: [AUSKLAPPEN] ;api_GetKeyNameText% (lParam%, lpBuffer$, nSize%) : \"GetKeyNameTextA\"
durch die korrekte Version ersetzt |
||
- Zuletzt bearbeitet von airblaster am Mi, Aug 31, 2005 13:19, insgesamt einmal bearbeitet
![]() |
Sebastian |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich vermute dein lParam passt nicht ( o. ist ungültig).
lParam muss so aussehen wie der lParam einer WM_KEYDOWN - message (WM_KeyDown) Folglich fehlen da villeicht ein par bits ... Ich spiel mal ein bischen rum .... |
||
Seit 2 Jahren kein BlitzBasic und kein Windows mehr, und stolz darauf ! |
![]() |
Sebastian |
![]() Antworten mit Zitat ![]() |
---|---|---|
Kommando zurück !
Probier mal das : BlitzBasic: [AUSKLAPPEN]
Ausgabe : Code: [AUSKLAPPEN] 4 Das bedeutet es werden 4 byte (Strg) übergeben , bloß kommen die nie in der bank an !! Und zwar weil der Pointer zu der Bank in der decls als string ($) steht, er müsste allerding als pointer eingetragen sein (*) !!!! Nicht so: Code: [AUSKLAPPEN] api_GetKeyNameText% (lParam%, lpBuffer$, nSize%) : "GetKeyNameTextA"
Sondern so: Code: [AUSKLAPPEN] api_GetKeyNameText% (lParam%, lpBuffer*, nSize%) : "GetKeyNameTextA"
Kleiner Fehler Große Wirkung ... |
||
Seit 2 Jahren kein BlitzBasic und kein Windows mehr, und stolz darauf ! |
- Zuletzt bearbeitet von Sebastian am Do, Sep 01, 2005 11:45, insgesamt einmal bearbeitet
airblaster |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Vielen Dank, das war es wirklich ![]() Hätte nicht gedacht dass es an so einem kleinen Detail lag ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group