Seite 1 von 2
Tastenkombinationen mit Keybd_event_()
Verfasst: 27.08.2008 09:39
von Tompazi
Ich habe eine Prozedur geschrieben die ermöglichen soll zwei Tasten gleichzeitig drücken zu lassen (wie in diesem bsp Strg+A).
Ich ein bisschen herum gesucht und das hier zusammen gebastelt aber so funktionierts nicht und er schreibt mir einfach ein "a" anstatt alles zu makieren. Leider gehn mir die Ideen aus.
Code: Alles auswählen
Procedure PushKey(Key1$,Key2$)
If Val(Key1$)
vk1 = Val(Key1$)
Else
vk1 = VkKeyScan_(Asc(Key1$))
EndIf
If Val(Key2$)
vk2 = Val(Key2$)
Else
vk2 = VkKeyScan_(Asc(Key2$))
EndIf
keybd_event_(vk1, 0, 0, 0)
keybd_event_(vk2, 0, 0, 0)
keybd_event_(vk2, 0, #KEYEVENTF_KEYUP, 0)
keybd_event_(vk1, 0, #KEYEVENTF_KEYUP, 0)
EndProcedure
Delay(1000)
PushKey("11","a")
MfG Tompazi
Verfasst: 27.08.2008 14:07
von hardfalcon
Versuch mal, 2 Keycodes mit | (bitweises AND) zu verknüpfen.
Verfasst: 27.08.2008 14:27
von Tompazi
äh was?, wir sind hier im Anfängerforum, könntest du mir das genauer erklären oder ein example geben das wäre nett
Danke Tompazi
Verfasst: 27.08.2008 14:28
von HeX0R
hardfalcon hat geschrieben:Versuch mal, 2 Keycodes mit | (bitweises AND) zu verknüpfen.
*hust* Was ?
Verfasst: 27.08.2008 14:39
von Tompazi
also du verstehst es auch nicht
da bin ich aber beruhigt

MfG Tompazi
//Edit
btw, unter welcher Lizenz stehen die Codes im Codearchiv?
Verfasst: 27.08.2008 15:17
von Kaeru Gaman
verstehbar ist das schon, es entbehrt nur jeden Sinnes...
folgendes Beispiel mag das verdeutlichen:
Code: Alles auswählen
v1 = Asc("C")
v2 = Asc("E")
v3 = v1 & v2
v4 = v1 | v2
Debug "AND-Wert: " + Str(v3) + ", Zeichen: " + Chr(v3)
Debug "OR-Wert: " + Str(v4) + ", Zeichen: " + Chr(v4)
zuerst werden die Zeichencodes für "C" und für "E" bitweise AND verknüpft.
denn werden die Zeichencodes für "C" und für "E" bitweise OR verknüpft.
die ergebnisse zeigen, wie unsinnig das ist.
Re: Tastenkombinationen mit Keybd_event_()
Verfasst: 27.08.2008 15:33
von edel
Tompazi hat geschrieben:Ich habe eine Prozedur geschrieben die ermöglichen soll zwei Tasten gleichzeitig drücken zu lassen (wie in diesem bsp Strg+A).
Ich ein bisschen herum gesucht und das hier zusammen gebastelt aber so funktionierts nicht und er schreibt mir einfach ein "a" anstatt alles zu makieren. Leider gehn mir die Ideen aus.
Das liegt daran das du einen Hexwert uebergibst, ihn aber nicht als solchen
behandelst. Also nicht 11 uebergeben sondern 17.
Verfasst: 27.08.2008 15:54
von Tompazi
Oh, ich bin Leider zu dumm für alles ein
sagt schon alles -.-
aber wie komme ich auf den richtigen Wert also von 0x11 auf 17?
Verfasst: 27.08.2008 15:55
von edel
Verfasst: 27.08.2008 16:00
von Tompazi
*heul* ich scheitere immer an den einfachsten Aufgaben
aber Danke
MfG Tompazi
//Edit
Und wie bekomme ich einen String$ = "11" in Key = $11
be patient pls