AW: SendKeys-Befehl Windows 7 geht nicht
27.12.2009 14:15:08
Tino
Hallo,
Google mal nach der Api keybd_event, damit kannst Du auch Tastenanschläge simulieren.
Ist nicht so einfach da was Brauchbares für Dein Vorhaben zu realisieren
weil dies nur für eine Taste gilt.
Ob dies unter Windows 7 funktioniert kann ich auch nicht sagen.
Hier mal ein Beispiel um "Tino Walli" zu schreiben.
Option Explicit
Private Declare Sub keybd_event _
Lib "user32" (ByVal byteVirtualKeycode As Byte, _
ByVal byteScan As Byte, ByVal lFlags As Long, ByVal lExtraInfo As Long)
Enum vk_Keys
VK_A = &H41 'Taste A
VK_B = &H42 'Taste B
VK_C = &H43 'Taste C
VK_D = &H44 'Taste D
VK_E = &H45 'Taste E
VK_F = &H46 'Taste F
VK_G = &H47 'Taste G
VK_H = &H48 'Taste H
VK_I = &H49 'Taste I
VK_J = &H4A 'Taste J
VK_K = &H4B 'Taste K
VK_L = &H4C 'Taste L
VK_M = &H4D 'Taste M
VK_N = &H4E 'Taste N
VK_O = &H4F 'Taste O
VK_P = &H50 'Taste P
VK_Q = &H51 'Taste Q
VK_R = &H52 'Taste R
VK_S = &H53 'Taste S
VK_T = &H54 'Taste T
VK_U = &H55 'Taste U
VK_V = &H56 'Taste V
VK_W = &H57 'Taste W
VK_X = &H58 'Taste X
VK_Y = &H59 'Taste Y
VK_SPACE = &H20
VK_RSHIFT = &HA1
End Enum
Private Const KEYEVENTF_KEYUP As Long = &H2 ' Taste lösen
Function Taste(vk_Key As vk_Keys, Optional ZusatzKey As vk_Keys = 0)
If ZusatzKey > 0 Then
keybd_event ZusatzKey, 0, 0, 0 'Taste drücken
End If
keybd_event vk_Key, 0, 0, 0 'Taste drücken
keybd_event vk_Key, 0, KEYEVENTF_KEYUP, 0 'Taste los lassen
If ZusatzKey > 0 Then
keybd_event ZusatzKey, 0, KEYEVENTF_KEYUP, 0 'Taste los lassen
End If
End Function
Sub Beispiel()
Taste VK_T, VK_RSHIFT
Taste VK_I
Taste VK_N
Taste VK_O
Taste VK_SPACE
Taste VK_W, VK_RSHIFT
Taste VK_A
Taste VK_L
Taste VK_L
Taste VK_I
End Sub
Hier noch die Key Konstanten.
Const VK_LBUTTON = &H1 'Linker Mausbutton
Const VK_RBUTTON = &H2 'Rechter Mausbutton
Const VK_MBUTTON = &H4 'Mittlerer Masubutton
Const VK_BACK = &H8 'Backspace Taste
Const VK_TAB = &H9 'Tab Taste
Const VK_CLEAR = &HC 'Numpad 5 ohne Numlock
Const VK_RETURN = &HD 'Enter Taste
Const VK_SHIFT = &H10 'Shift Taste
Const VK_CONTROL = &H11 'STRG Taste
Const VK_MENU = &H12 'Alt Taste
Const VK_PAUSE = &H13 'Pause/Untbr
Const VK_CAPITAL = &H14 'Caps Lock/Feststelltaste
Const VK_ESCAPE = &H1B 'Escape
Const VK_SPACE = &H20 'Space/Leertaste
Const VK_PRIOR = &H21 'PageUp/Bild hoch
Const VK_NEXT = &H22 'PageDown/Bild runter
Const VK_END = &H23 'Ende
Const VK_HOME = &H24 'Home/Pos1
Const VK_LEFT = &H25 'Linke Pfeiltaste
Const VK_UP = &H26 'Obere Pfeilaste
Const VK_RIGHT = &H27 'Rechte Pfeiltaste
Const VK_DOWN = &H28 'Untee Pfeiltaste
Const VK_PRINT = &H2A 'Drucken (Nokia Tastaturen)
Const VK_SNAPSHOT = &H2C 'Drucken/S-Abf
Const VK_INSERT = &H2D 'Einfügen
Const VK_DELETE = &H2E 'Entfernen
Const VK_HELP = &H2F 'Hilfe
Const VK_0 = &H30 'Taste 0
Const VK_1 = &H31 'Taste 1
Const VK_2 = &H32 'Taste 2
Const VK_3 = &H33 'Taste 3
Const VK_4 = &H34 'Taste 4
Const VK_5 = &H35 'Taste 5
Const VK_6 = &H36 'Taste 6
Const VK_7 = &H37 'Taste 7
Const VK_8 = &H38 'Taste 8
Const VK_9 = &H39 'Taste 9
Const VK_A = &H41 'Taste A
Const VK_B = &H42 'Taste B
Const VK_C = &H43 'Taste C
Const VK_D = &H44 'Taste D
Const VK_E = &H45 'Taste E
Const VK_F = &H46 'Taste F
Const VK_G = &H47 'Taste G
Const VK_H = &H48 'Taste H
Const VK_I = &H49 'Taste I
Const VK_J = &H4A 'Taste J
Const VK_K = &H4B 'Taste K
Const VK_L = &H4C 'Taste L
Const VK_M = &H4D 'Taste M
Const VK_N = &H4E 'Taste N
Const VK_O = &H4F 'Taste O
Const VK_P = &H50 'Taste P
Const VK_Q = &H51 'Taste Q
Const VK_R = &H52 'Taste R
Const VK_S = &H53 'Taste S
Const VK_T = &H54 'Taste T
Const VK_U = &H55 'Taste U
Const VK_V = &H56 'Taste V
Const VK_W = &H57 'Taste W
Const VK_X = &H58 'Taste X
Const VK_Y = &H59 'Taste Y
Const VK_Z = &H5A 'Taste Z
Const VK_STARTKEY = &H5B 'Startmenütaste
Const VK_CONTEXTKEY = &H5D 'Kentextmenü
Const VK_NUMPAD0 = &H60 'Numpad Taste 0
Const VK_NUMPAD1 = &H61 'Numpad Taste 1
Const VK_NUMPAD2 = &H62 'Numpad Taste 2
Const VK_NUMPAD3 = &H63 'Numpad Taste 3
Const VK_NUMPAD4 = &H64 'Numpad Taste 4
Const VK_NUMPAD5 = &H65 'Numpad Taste 5
Const VK_NUMPAD6 = &H66 'Numpad Taste 6
Const VK_NUMPAD7 = &H67 'Numpad Taste 7
Const VK_NUMPAD8 = &H68 'Numpad Taste 8
Const VK_NUMPAD9 = &H69 'Numpad Taste 9
Const VK_MULTIPLY = &H6A 'Numpad Multiplikations Taste (*)
Const VK_ADD = &H6B 'Numpad Additions Taste (+)
Const VK_SUBTRACT = &H6D 'Numpad Subtrations Taste (-)
Const VK_DECIMAL = &H6E 'Numpad Komma Taste (,)
Const VK_DIVIDE = &H6F 'Numpad Devidierungs Taste (/)
Const VK_F1 = &H70 'F1 Taste
Const VK_F2 = &H71 'F2 Taste
Const VK_F3 = &H72 'F3 Taste
Const VK_F4 = &H73 'F4 Taste
Const VK_F5 = &H74 'F5 Taste
Const VK_F6 = &H75 'F6 Taste
Const VK_F7 = &H76 'F7 Taste
Const VK_F8 = &H77 'F8 Taste
Const VK_F9 = &H78 'F9 Taste
Const VK_F10 = &H79 'F10 Taste
Const VK_F11 = &H7A 'F11 Taste
Const VK_F12 = &H7B 'F12 Taste
Const VK_F13 = &H7C 'F13 Taste
Const VK_F14 = &H7D 'F14 Taste
Const VK_F15 = &H7E 'F15 Taste
Const VK_F16 = &H7F 'F16 Taste
Const VK_F17 = &H80 'F17 Taste
Const VK_F18 = &H81 'F18 Taste
Const VK_F19 = &H82 'F19 Taste
Const VK_F20 = &H83 'F20 Taste
Const VK_F21 = &H84 'F21 Taste
Const VK_F22 = &H85 'F22 Taste
Const VK_F23 = &H86 'F23 Taste
Const VK_F24 = &H87 'F24 Taste
Const VK_NUMLOCK = &H90 'Numlock Taste
Const VK_OEM_SCROLL = &H91 'Scroll Lock
Const VK_LSHIFT = &HA0 'Linke Shift-Taste
Const VK_RSHIFT = &HA1 'Rechte Shift-Taste
Const VK_LCONTROL = &HA2 'Linke STRG-Taste
Const VK_RCONTROL = &HA3 'Rechte STRG-Taste
Const VK_LMENU = &HA4 'Linke ALT-Taste
Const VK_RMENU = &HA5 'Rechte ALT-Taste
Const VK_OEM_1 = &HBA '";"-Taste
Const VK_OEM_PLUS = &HBB '"
Const VK_OEM_COMMA = &HBC '","-Taste
Const VK_OEM_MINUS = &HBD '"-"-Taste
Const VK_OEM_PERIOD = &HBE '"."-taste
Const VK_OEM_2 = &HBF '"/"-Taste
Const VK_OEM_3 = &HC0 '"`"-Taste
Const VK_OEM_4 = &HDB '"["-Taste
Const VK_OEM_5 = &HDC '"\"-Taste
Const VK_OEM_6 = &HDD '"]"-Taste
Const VK_OEM_7 = &HDE '"
Const VK_ICO_F17 = &HE0 'F17 einer Olivette Tastatur (Intern)
Const VK_ICO_F18 = &HE1 'F18 einer Olivette Tastatur (Intern)
Const VK_OEM102 = &HE2 '"
Gruß Tino