| |
VB & Windows APITastatureingaben ermitteln | | | Autor: Argon | Datum: 24.03.05 22:39 |
| Hallo zusammen!
Gibt es eine API-Funktion, mit deren Hilfe sich (alle) Tastatureingaben ermitteln lassen, auch wenn das Programm, welches sie dann sozusagen überprüft, nur im Hintergrund läuft (also so eine Art globales KeyDown- (bzw. KeyPress-) Ereignis) ?
Auch Lösungen ohne API sind herzlich willkommen!
mfg Argon | |
Re: Tastatureingaben ermitteln | | | Autor: Argon | Datum: 25.03.05 22:06 |
| Hey Martoeng - herzlichen Dank!
Genau solche Funktionen suchte ich, doch finde ich für die erste (GetKeyboardState) nicht heraus, wie ich diese anwenden muss... Was muss man da übergeben (Konstanten?!) und was gibt die zurück?
mfg Argon | |
Re: Tastatureingaben ermitteln | | | Autor: Argon | Datum: 28.03.05 21:27 |
| In den Tipps zu suchen war mir gar nicht in den Sinn gekommen... Danke! | |
Re: Tastatureingaben ermitteln | | | Autor: Martin Walcher | Datum: 29.03.05 20:18 |
| hi argon,
eleganter lässt sich das ganze mit der api SetWindowsHookEx lösen. dort muss nur der parameter idHook = WH_KEYBOARD_LL übergeben werden.
neben der geschwindigkeit hat diese methode den vorteil dass tastatureingaben manipuliert oder bestimmte tasten deaktiviert werden können.
im msdn is des alles ganz gut beschrieben
mfg
martin | |
Re: Tastatureingaben ermitteln | | | Autor: Argon | Datum: 30.03.05 21:12 |
| Hi Martin Walcher
Erst mal vielen Dank für deinen Hinweis! Doch leider bin ich in API-Funktionen nicht sehr bewandert und verstehe nicht, was auf dem Link von "SetWindowHookEx" mit den "hook procedures" gemeint ist...
Zu der MSDN: Ich habe keine Vollversion vom VB-Studio und ich habe die MSDN nirgends gefunden... Kann man die irgendwo downloaden (auf Deutsch oder Englisch?) oder muss man die kaufen? | |
Re: Tastatureingaben ermitteln | | | Autor: Argon | Datum: 30.03.05 22:39 |
| Hallo Martoeng
MSDN: Danke für den Link! (hätte auch selber drauf kommen können, wenn ich's mir so überlege, doch im Nachhinein ist man immer schlauer.) Auf Englisch hab' ich was gefunden, jedoch nichts auf Deutsch...
Hook: Kann ich nicht mitreden... | |
Re: Tastatureingaben ermitteln | | | Autor: Argon | Datum: 30.03.05 23:24 |
| Mach' ich! Und besten Dank für deine Hilfsbereitschaft! | |
Re: Tastatureingaben ermitteln | | | Autor: Martin Walcher | Datum: 31.03.05 08:56 |
| hi argon,
ich weiß nicht ob du's noch brauchst, aber hier trotzdem ein sample (muss alles in ein modul):
Private Declare Function SetWindowsHookEx Lib "user32.dll" Alias _
"SetWindowsHookExA" (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As _
Long, ByVal dwThreadId As Long) As Long
Private Declare Function UnhookWindowsHookEx Lib "user32.dll" (ByVal hHook As _
Long) As Long
Private Const WH_KEYBOARD_LL As Long = 13
Public Type KBDLLHOOKSTRUCT
vkCode As Long
scanCode As Long
flags As Long
time As Long
dwExtraInfo As Long
End Type
Dim hhk As Long
Public Function SetKeybHook() As Long
hhk = SetWindowsHookEx(WH_KEYBOARD_LL, AddressOf KeybHook, App.hInstance, 0)
End Function
Public Function DelKeybHook() As Long
If hhk = 0 Then Exit Function
UnhookWindowsHookEx hhk
hhk = 0
End Function
Private Function KeybHook(ByVal nCode As Long, ByVal wParam As Long, kbd As _
KBDLLHOOKSTRUCT) As Long
'wParam kann WM_KEYDOWN, WM_KEYUP, WM_SYSKEYDOWN, oder WM_SYSKEYUP enthalten
'kbd.vkCode ist der Code der gedrückten Taste
'Wenn KeybHook auf -1 gesetzt wird, wird die aktuelle Tasteneingabe verworfen
End Function und jetzt schon wieder n msdn link, aber ich hatte keinen bock das abzuschreiben
kbd
aufgerufen wird das ganze mit SetKeybHook aufgerufen und mit DelKeyProc wieder gelöscht.
mfg
Martin | |
Re: Tastatureingaben ermitteln | | | Autor: Argon | Datum: 31.03.05 20:38 |
| Hi Martin!
Nach längerem Studieren deines Codes glaub ich nun endlich, ihn begriffen zu haben... und er funktionniert einwandfrei! Danke!
PS: Links reichen schon, du brauchst nicht alles abzuschreiben - ich frage schon, wenn etwas unklar sein sollte!
mfg Argon | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevGraph (VB/VBA)
Grafische Auswertungen
Präsentieren Sie Ihre Daten mit wenig Aufwand in grafischer Form. sevGraph unterstützt hierbei Balken-, Linien- und Stapel-Diagramme (Stacked Bars), sowie 2D- und 3D-Tortendiagramme und arbeitet vollständig datenbankunabhängig! Weitere InfosTipp des Monats TOP Entwickler-Paket
TOP-Preis!!
Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR...
Jetzt nur 599,00 EURWeitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|