.:~ Einen sehr langen VB6 Source Code kürzen… ~:. VB 

Status
Für weitere Antworten geschlossen.

roblon

Registered +
Registriert
Apr. 2007
Beiträge
88
Hallo,

ich hab ein Echt GROßES Problem, denn ich wollte ein GamePad Tool Programmieren („GamePad2PC“), wo per Directinput die Ergebnisse in eine TextBox geschrieben werden,
Wenn die taste gedrückt ist dann steht in der dazugehörigen Textbox „Down“ wenn nicht dann steht dort „Up“.
Also mein Programm soll dann für die GamePad Taste eine Tastatur Taste Simulieren, ich wollte es aber nicht mit SendKeys machen und habe mich für die „keybd_event“ – API entschieden also Programmierte ich mir es für alle Tasten…
Das Problem ist das mein Source Code für die Tasten Simulation schon ÜBER 1700 ZEILEN VERBRAUCHT!!!
Deshalb wollte ich gerne wissen ob mir jemand sagen kann wie ich es kürzer und übersichtlicher machen kann, und ob ich das ganze nicht in ein Modul packen kann damit der „Reine Code“ nur ne paar Hundert Zeilen lang ist….

DAS IST MEIN „MONSTER SOURCE CODE“ ;) :

Code:
Option Explicit

Private Declare Sub keybd_event Lib "user32.dll" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)

'keybd_event dwFlags-Konstanten
Private Const KEYEVENTF_EXTENDEDKEY = &H1 'Erweiterte Tastatureingabe
Private Const KEYEVENTF_KEYUP = &H2 'Die angegebene Taste wird losgelassen

'GetAsyncKeyState vKey-Konstanten
Private Const VK_BACK = &H8 'Backspace Taste
Private Const VK_TAB = &H9 'Tab Taste
Private Const VK_RETURN = &HD 'Enter Taste
Private Const VK_SHIFT = &H10 'Shift Taste
Private Const VK_CONTROL = &H11 'STRG Taste
Private Const VK_MENU = &H12 'Alt Taste
Private Const VK_PAUSE = &H13 'Pause/Untbr
Private Const VK_CAPITAL = &H14 'Caps Lock/Feststelltaste
Private Const VK_ESCAPE = &H1B 'Escape
Private Const VK_SPACE = &H20 'Space/Leertaste
Private Const VK_PRIOR = &H21 'PageUp/Bild hoch
Private Const VK_NEXT = &H22 'PageDown/Bild runter
Private Const VK_END = &H23 'Ende
Private Const VK_HOME = &H24 'Home/Pos1
Private Const VK_LEFT = &H25 'Linke Pfeiltaste
Private Const VK_UP = &H26 'Obere Pfeilaste
Private Const VK_RIGHT = &H27 'Rechte Pfeiltaste
Private Const VK_DOWN = &H28 'Untee Pfeiltaste
Private Const VK_SNAPSHOT = &H2C 'Drucken/S-Abf
Private Const VK_INSERT = &H2D 'Einfügen
Private Const VK_DELETE = &H2E 'Entfernen
Private Const VK_0 = &H30 'Taste 0
Private Const VK_1 = &H31 'Taste 1
Private Const VK_2 = &H32 'Taste 2
Private Const VK_3 = &H33 'Taste 3
Private Const VK_4 = &H34 'Taste 4
Private Const VK_5 = &H35 'Taste 5
Private Const VK_6 = &H36 'Taste 6
Private Const VK_7 = &H37 'Taste 7
Private Const VK_8 = &H38 'Taste 8
Private Const VK_9 = &H39 'Taste 9
Private Const VK_A = &H41 'Taste A
Private Const VK_B = &H42 'Taste B
Private Const VK_C = &H43 'Taste C
Private Const VK_D = &H44 'Taste D
Private Const VK_E = &H45 'Taste E
Private Const VK_F = &H46 'Taste F
Private Const VK_G = &H47 'Taste G
Private Const VK_H = &H48 'Taste H
Private Const VK_I = &H49 'Taste I
Private Const VK_J = &H4A 'Taste J
Private Const VK_K = &H4B 'Taste K
Private Const VK_L = &H4C 'Taste L
Private Const VK_M = &H4D 'Taste M
Private Const VK_N = &H4E 'Taste N
Private Const VK_O = &H4F 'Taste O
Private Const VK_P = &H50 'Taste P
Private Const VK_Q = &H51 'Taste Q
Private Const VK_R = &H52 'Taste R
Private Const VK_S = &H53 'Taste S
Private Const VK_T = &H54 'Taste T
Private Const VK_U = &H55 'Taste U
Private Const VK_V = &H56 'Taste V
Private Const VK_W = &H57 'Taste W
Private Const VK_X = &H58 'Taste X
Private Const VK_Y = &H59 'Taste Y
Private Const VK_Z = &H5A 'Taste Z
Private Const VK_STARTKEY = &H5B 'Startmenütaste
Private Const VK_CONTEXTKEY = &H5D 'Kentextmenü
Private Const VK_NUMPAD0 = &H60 'Numpad Taste 0
Private Const VK_NUMPAD1 = &H61 'Numpad Taste 1
Private Const VK_NUMPAD2 = &H62 'Numpad Taste 2
Private Const VK_NUMPAD3 = &H63 'Numpad Taste 3
Private Const VK_NUMPAD4 = &H64 'Numpad Taste 4
Private Const VK_NUMPAD5 = &H65 'Numpad Taste 5
Private Const VK_NUMPAD6 = &H66 'Numpad Taste 6
Private Const VK_NUMPAD7 = &H67 'Numpad Taste 7
Private Const VK_NUMPAD8 = &H68 'Numpad Taste 8
Private Const VK_NUMPAD9 = &H69 'Numpad Taste 9
Private Const VK_MULTIPLY = &H6A 'Numpad Multiplikations Taste (*)
Private Const VK_ADD = &H6B 'Numpad Additions Taste (+)
Private Const VK_SUBTRACT = &H6D 'Numpad Subtrations Taste (-)
Private Const VK_DECIMAL = &H6E 'Numpad Komma Taste (,)
Private Const VK_DIVIDE = &H6F 'Numpad Devidierungs Taste (/)
Private Const VK_F1 = &H70 'F1 Taste
Private Const VK_F2 = &H71 'F2 Taste
Private Const VK_F3 = &H72 'F3 Taste
Private Const VK_F4 = &H73 'F4 Taste
Private Const VK_F5 = &H74 'F5 Taste
Private Const VK_F6 = &H75 'F6 Taste
Private Const VK_F7 = &H76 'F7 Taste
Private Const VK_F8 = &H77 'F8 Taste
Private Const VK_F9 = &H78 'F9 Taste
Private Const VK_F10 = &H79 'F10 Taste
Private Const VK_F11 = &H7A 'F11 Taste
Private Const VK_F12 = &H7B 'F12 Taste
Private Const VK_NUMLOCK = &H90 'Numlock Taste
Private Const VK_OEM_SCROLL = &H91 'Scroll Lock
Private Const VK_LSHIFT = &HA0 'Linke Shift-Taste
Private Const VK_RSHIFT = &HA1 'Rechte Shift-Taste
Private Const VK_LCONTROL = &HA2 'Linke STRG-Taste
Private Const VK_RCONTROL = &HA3 'Rechte STRG-Taste
Private Const VK_LMENU = &HA4 'Linke ALT-Taste
Private Const VK_RMENU = &HA5 'Rechte ALT-Taste
Private Const VK_OEM_1 = &HBA '";"-Taste
Private Const VK_OEM_PLUS = &HBB '"
Private Const VK_OEM_COMMA = &HBC '","-Taste
Private Const VK_OEM_MINUS = &HBD '"-"-Taste
Private Const VK_OEM_PERIOD = &HBE '"."-taste
Private Const VK_OEM_2 = &HBF '"/"-Taste
Private Const VK_OEM_3 = &HC0 '"`"-Taste
Private Const VK_OEM_4 = &HDB '"['-Taste
Private Const VK_OEM_5 = &HDC ''\'-Taste
Private Const VK_OEM_6 = &HDD '']"-Taste
Private Const VK_LWIN = &H5B 'Linke Windows-Taste


'Variablen festlegung
Dim vBack As Integer
Dim vTab As Integer
Dim vEnter As Integer
Dim vShift As Integer
Dim vStrg As Integer
Dim vAlt As Integer
Dim vPause As Integer
Dim vFeststell As Integer
Dim vEscape As Integer
Dim vSpace As Integer
Dim vPageUp As Integer
Dim vPageDown As Integer
Dim vEnde As Integer
Dim vPos1 As Integer
Dim vleft As Integer
Dim vUp As Integer
Dim vRight As Integer
Dim vDown As Integer
Dim vDrucken As Integer
Dim vEinfuegen As Integer
Dim vEntfernen As Integer
Dim v0 As Integer
Dim v1 As Integer
Dim v2 As Integer
Dim v3 As Integer
Dim v4 As Integer
Dim v5 As Integer
Dim v6 As Integer
Dim v7 As Integer
Dim v8 As Integer
Dim v9 As Integer
Dim vA As Integer
Dim vB As Integer
Dim vC As Integer
Dim vD As Integer
Dim vE As Integer
Dim vF As Integer
Dim vG As Integer
Dim vH As Integer
Dim vI As Integer
Dim vJ As Integer
Dim vK As Integer
Dim vL As Integer
Dim vM As Integer
Dim vN As Integer
Dim vO As Integer
Dim vP As Integer
Dim vQ As Integer
Dim vR As Integer
Dim vS As Integer
Dim vT As Integer
Dim vU As Integer
Dim vV As Integer
Dim vW As Integer
Dim vX As Integer
Dim vY As Integer
Dim vZ As Integer
Dim vStartkey As Integer
Dim vKontext As Integer
Dim vNum0 As Integer
Dim vNum1 As Integer
Dim vNum2 As Integer
Dim vNum3 As Integer
Dim vNum4 As Integer
Dim vNum5 As Integer
Dim vNum6 As Integer
Dim vNum7 As Integer
Dim vNum8 As Integer
Dim vNum9 As Integer
Dim vNummal As Integer
Dim vNumplus As Integer
Dim vNumminus As Integer
Dim vNumkomma As Integer
Dim vNumteilen As Integer
Dim vF1 As Integer
Dim vF2 As Integer
Dim vF3 As Integer
Dim vF4 As Integer
Dim vF5 As Integer
Dim vF6 As Integer
Dim vF7 As Integer
Dim vF8 As Integer
Dim vF9 As Integer
Dim vF10 As Integer
Dim vF11 As Integer
Dim vF12 As Integer
Dim vNumlock As Integer
Dim vScrolllock As Integer
Dim vLshift As Integer
Dim vRshift As Integer
Dim vLstrg As Integer
Dim vRstrg As Integer
Dim vLalt As Integer
Dim vRalt As Integer
Dim vsimikolon As Integer
Dim vplus As Integer
Dim vkomma As Integer
Dim vMinus As Integer
Dim vPunkt As Integer
Dim vGeteil As Integer
Dim vStich As Integer
Dim vEklammera As Integer
Dim vGeteilb As Integer
Dim vEklammerb As Integer
Dim vLwin As Integer

'Die Nächsten Variablen werden Festgelegt.....

Dim vBacktext As String
Dim vTabtext As String
Dim vEntertext As String
Dim vShifttext As String
Dim vStrgtext As String
Dim vAlttext As String
Dim vPausetext As String
Dim vFeststelltext As String
Dim vEscapetext As String
Dim vSpacetext As String
Dim vPageUptext As String
Dim vPageDowntext As String
Dim vEndetext As String
Dim vPos1text As String
Dim vlefttext As String
Dim vUptext As String
Dim vRighttext As String
Dim vDowntext As String
Dim vDruckentext As String
Dim vEinfuegentext As String
Dim vEntfernentext As String
Dim v0text As String
Dim v1text As String
Dim v2text As String
Dim v3text As String
Dim v4text As String
Dim v5text As String
Dim v6text As String
Dim v7text As String
Dim v8text As String
Dim v9text As String
Dim vAtext As String
Dim vBtext As String
Dim vCtext As String
Dim vDtext As String
Dim vEtext As String
Dim vFtext As String
Dim vGtext As String
Dim vHtext As String
Dim vItext As String
Dim vJtext As String
Dim vKtext As String
Dim vLtext As String
Dim vMtext As String
Dim vNtext As String
Dim vOtext As String
Dim vPtext As String
Dim vQtext As String
Dim vRtext As String
Dim vStext As String
Dim vTtext As String
Dim vUtext As String
Dim vVtext As String
Dim vWtext As String
Dim vXtext As String
Dim vYtext As String
Dim vZtext As String
Dim vStartkeytext As String
Dim vKontexttext As String
Dim vNum0text As String
Dim vNum1text As String
Dim vNum2text As String
Dim vNum3text As String
Dim vNum4text As String
Dim vNum5text As String
Dim vNum6text As String
Dim vNum7text As String
Dim vNum8text As String
Dim vNum9text As String
Dim vNummaltext As String
Dim vNumplustext As String
Dim vNumminustext As String
Dim vNumkommatext As String
Dim vNumteilentext As String
Dim vF1text As String
Dim vF2text As String
Dim vF3text As String
Dim vF4text As String
Dim vF5text As String
Dim vF6text As String
Dim vF7text As String
Dim vF8text As String
Dim vF9text As String
Dim vF10text As String
Dim vF11text As String
Dim vF12text As String
Dim vNumlocktext As String
Dim vScrolllocktext As String
Dim vLshifttext As String
Dim vRshifttext As String
Dim vLstrgtext As String
Dim vRstrgtext As String
Dim vLalttext As String
Dim vRalttext As String
Dim vsimikolontext As String
Dim vplustext As String
Dim vkommatext As String
Dim vMinustext As String
Dim vPunkttext As String
Dim vGeteiltext As String
Dim vStichtext As String
Dim vEklammeratext As String
Dim vGeteilbtext As String
Dim vEklammerbtext As String
Dim vLwintext As String

Private Sub Form_Load()

' Sicherheitsfestlegung auf "1"
vBack = "1"
vTab = "1"
vEnter = "1"
vShift = "1"
vStrg = "1"
vAlt = "1"
vPause = "1"
vFeststell = "1"
vEscape = "1"
vSpace = "1"
vPageUp = "1"
vPageDown = "1"
vEnde = "1"
vPos1 = "1"
vleft = "1"
vUp = "1"
vRight = "1"
vDown = "1"
vDrucken = "1"
vEinfuegen = "1"
vEntfernen = "1"
v0 = "1"
v1 = "1"
v2 = "1"
v3 = "1"
v4 = "1"
v5 = "1"
v6 = "1"
v7 = "1"
v8 = "1"
v9 = "1"
vA = "1"
vB = "1"
vC = "1"
vD = "1"
vE = "1"
vF = "1"
vG = "1"
vH = "1"
vI = "1"
vJ = "1"
vK = "1"
vL = "1"
vM = "1"
vN = "1"
vO = "1"
vP = "1"
vQ = "1"
vR = "1"
vS = "1"
vT = "1"
vU = "1"
vV = "1"
vW = "1"
vX = "1"
vY = "1"
vZ = "1"
vStartkey = "1"
vKontext = "1"
vNum0 = "1"
vNum1 = "1"
vNum2 = "1"
vNum3 = "1"
vNum4 = "1"
vNum5 = "1"
vNum6 = "1"
vNum7 = "1"
vNum8 = "1"
vNum9 = "1"
vNummal = "1"
vNumplus = "1"
vNumminus = "1"
vNumkomma = "1"
vNumteilen = "1"
vF1 = "1"
vF2 = "1"
vF3 = "1"
vF4 = "1"
vF5 = "1"
vF6 = "1"
vF7 = "1"
vF8 = "1"
vF9 = "1"
vF10 = "1"
vF11 = "1"
vF12 = "1"
vNumlock = "1"
vScrolllock = "1"
vLshift = "1"
vRshift = "1"
vLstrg = "1"
vRstrg = "1"
vLalt = "1"
vRalt = "1"
vsimikolon = "1"
vplus = "1"
vkomma = "1"
vMinus = "1"
vPunkt = "1"
vGeteil = "1"
vStich = "1"
vEklammera = "1"
vGeteilb = "1"
vEklammerb = "1"
vLwin = "1"

'sichherheitsfestlegung auf "Up"
vBacktext = "Up"
vTabtext = "Up"
vEntertext = "Up"
vShifttext = "Up"
vStrgtext = "Up"
vAlttext = "Up"
vPausetext = "Up"
vFeststelltext = "Up"
vEscapetext = "Up"
vSpacetext = "Up"
vPageUptext = "Up"
vPageDowntext = "Up"
vEndetext = "Up"
vPos1text = "Up"
vlefttext = "Up"
vUptext = "Up"
vRighttext = "Up"
vDowntext = "Up"
vDruckentext = "Up"
vEinfuegentext = "Up"
vEntfernentext = "Up"
v0text = "Up"
v1text = "Up"
v2text = "Up"
v3text = "Up"
v4text = "Up"
v5text = "Up"
v6text = "Up"
v7text = "Up"
v8text = "Up"
v9text = "Up"
vAtext = "Up"
vBtext = "Up"
vCtext = "Up"
vDtext = "Up"
vEtext = "Up"
vFtext = "Up"
vGtext = "Up"
vHtext = "Up"
vItext = "Up"
vJtext = "Up"
vKtext = "Up"
vLtext = "Up"
vMtext = "Up"
vNtext = "Up"
vOtext = "Up"
vPtext = "Up"
vQtext = "Up"
vRtext = "Up"
vStext = "Up"
vTtext = "Up"
vUtext = "Up"
vVtext = "Up"
vWtext = "Up"
vXtext = "Up"
vYtext = "Up"
vZtext = "Up"
vStartkeytext = "Up"
vKontexttext = "Up"
vNum0text = "Up"
vNum1text = "Up"
vNum2text = "Up"
vNum3text = "Up"
vNum4text = "Up"
vNum5text = "Up"
vNum6text = "Up"
vNum7text = "Up"
vNum8text = "Up"
vNum9text = "Up"
vNummaltext = "Up"
vNumplustext = "Up"
vNumminustext = "Up"
vNumkommatext = "Up"
vNumteilentext = "Up"
vF1text = "Up"
vF2text = "Up"
vF3text = "Up"
vF4text = "Up"
vF5text = "Up"
vF6text = "Up"
vF7text = "Up"
vF8text = "Up"
vF9text = "Up"
vF10text = "Up"
vF11text = "Up"
vF12text = "Up"
vNumlocktext = "Up"
vScrolllocktext = "Up"
vLshifttext = "Up"
vRshifttext = "Up"
vLstrgtext = "Up"
vRstrgtext = "Up"
vLalttext = "Up"
vRalttext = "Up"
vsimikolontext = "Up"
vplustext = "Up"
vkommatext = "Up"
vMinustext = "Up"
vPunkttext = "Up"
vGeteiltext = "Up"
vStichtext = "Up"
vEklammeratext = "Up"
vGeteilbtext = "Up"
vEklammerbtext = "Up"
vLwintext = "Up"

End Sub


Private Sub Timer1_Timer()
'Beispiele Der Variablen Festlegung, nicht zwingend !!!
vLwintext = Text1.Text
vMinustext = Text2.Text
'und so weiter immer als erstes die Variable (z.B. vDowntext) und dann die auszulesende TextBox(z.B. text3.text) !!
Tastendruck

End Sub

Private Sub Tastendruck()
' Die Tastendruck simulation !!! Nicht SendKeys !!


'vBack
If vBack = "1" And vBacktext = "Down" Then
Call keybd_event(VK_BACK, 0&, 0&, 0&)
vBack = "2"
End If
If vBack = "2" And vBacktext = "Up" Then
Call keybd_event(VK_BACK, 0&, KEYEVENTF_KEYUP, 0&)
vBack = "1"
End If


'vTab
If vTab = "1" And vTabtext = "Down" Then
Call keybd_event(VK_TAB, 0&, 0&, 0&)
vTab = "2"
End If
If vTab = "2" And vTabtext = "Up" Then
Call keybd_event(VK_TAB, 0&, KEYEVENTF_KEYUP, 0&)
vTab = "1"
End If


'vEnter
If vEnter = "1" And vEntertext = "Down" Then
Call keybd_event(VK_RETURN, 0&, 0&, 0&)
vEnter = "2"
End If
If vEnter = "2" And vEntertext = "Up" Then
Call keybd_event(VK_RETURN, 0&, KEYEVENTF_KEYUP, 0&)
vEnter = "1"
End If


'vShift
If vShift = "1" And vShifttext = "Down" Then
Call keybd_event(VK_SHIFT, 0&, 0&, 0&)
vShift = "2"
End If
If vShift = "2" And vShifttext = "Up" Then
Call keybd_event(VK_SHIFT, 0&, KEYEVENTF_KEYUP, 0&)
vShift = "1"
End If


'vStrg
If vStrg = "1" And vStrgtext = "Down" Then
Call keybd_event(VK_CONTROL, 0&, 0&, 0&)
vStrg = "2"
End If
If vStrg = "2" And vStrgtext = "Up" Then
Call keybd_event(VK_CONTROL, 0&, KEYEVENTF_KEYUP, 0&)
vStrg = "1"
End If


'vAlt
If vAlt = "1" And vAlttext = "Down" Then
Call keybd_event(VK_MENU, 0&, 0&, 0&)
vAlt = "2"
End If
If vAlt = "2" And vAlttext = "Up" Then
Call keybd_event(VK_MENU, 0&, KEYEVENTF_KEYUP, 0&)
vAlt = "1"
End If


'vPause
If vPause = "1" And vPausetext = "Down" Then
Call keybd_event(VK_PAUSE, 0&, 0&, 0&)
vPause = "2"
End If
If vPause = "2" And vPausetext = "Up" Then
Call keybd_event(VK_PAUSE, 0&, KEYEVENTF_KEYUP, 0&)
vPause = "1"
End If


'vFeststell
If vFeststell = "1" And vFeststelltext = "Down" Then
Call keybd_event(VK_CAPITAL, 0&, 0&, 0&)
vFeststell = "2"
End If
If vFeststell = "2" And vFeststelltext = "Up" Then
Call keybd_event(VK_CAPITAL, 0&, KEYEVENTF_KEYUP, 0&)
vFeststell = "1"
End If


'vEscape
If vEscape = "1" And vEscapetext = "Down" Then
Call keybd_event(VK_ESCAPE, 0&, 0&, 0&)
vEscape = "2"
End If
If vEscape = "2" And vEscapetext = "Up" Then
Call keybd_event(VK_ESCAPE, 0&, KEYEVENTF_KEYUP, 0&)
vEscape = "1"
End If


'vSpace
If vSpace = "1" And vSpacetext = "Down" Then
Call keybd_event(VK_SPACE, 0&, 0&, 0&)
vSpace = "2"
End If
If vSpace = "2" And vSpacetext = "Up" Then
Call keybd_event(VK_SPACE, 0&, KEYEVENTF_KEYUP, 0&)
vSpace = "1"
End If


'vPageUp
If vPageUp = "1" And vPageUptext = "Down" Then
Call keybd_event(VK_PRIOR, 0&, 0&, 0&)
vPageUp = "2"
End If
If vPageUp = "2" And vPageUptext = "Up" Then
Call keybd_event(VK_PRIOR, 0&, KEYEVENTF_KEYUP, 0&)
vPageUp = "1"
End If


'vPageDown
If vPageDown = "1" And vPageDowntext = "Down" Then
Call keybd_event(VK_NEXT, 0&, 0&, 0&)
vPageDown = "2"
End If
If vPageDown = "2" And vPageDowntext = "Up" Then
Call keybd_event(VK_NEXT, 0&, KEYEVENTF_KEYUP, 0&)
vPageDown = "1"
End If


'vEnde
If vEnde = "1" And vEndetext = "Down" Then
Call keybd_event(VK_END, 0&, 0&, 0&)
vEnde = "2"
End If
If vEnde = "2" And vEndetext = "Up" Then
Call keybd_event(VK_END, 0&, KEYEVENTF_KEYUP, 0&)
vEnde = "1"
End If


'vPos1
If vPos1 = "1" And vPos1text = "Down" Then
Call keybd_event(VK_HOME, 0&, 0&, 0&)
vPos1 = "2"
End If
If vPos1 = "2" And vPos1text = "Up" Then
Call keybd_event(VK_HOME, 0&, KEYEVENTF_KEYUP, 0&)
vPos1 = "1"
End If


'vleft
If vleft = "1" And vlefttext = "Down" Then
Call keybd_event(VK_LEFT, 0&, 0&, 0&)
vleft = "2"
End If
If vleft = "2" And vlefttext = "Up" Then
Call keybd_event(VK_LEFT, 0&, KEYEVENTF_KEYUP, 0&)
vleft = "1"
End If


'vUp
If vUp = "1" And vUptext = "Down" Then
Call keybd_event(VK_UP, 0&, 0&, 0&)
vUp = "2"
End If
If vUp = "2" And vUptext = "Up" Then
Call keybd_event(VK_UP, 0&, KEYEVENTF_KEYUP, 0&)
vUp = "1"
End If


'vRight
If vRight = "1" And vRighttext = "Down" Then
Call keybd_event(VK_RIGHT, 0&, 0&, 0&)
vRight = "2"
End If
If vRight = "2" And vRighttext = "Up" Then
Call keybd_event(VK_RIGHT, 0&, KEYEVENTF_KEYUP, 0&)
vRight = "1"
End If


'vDown
If vDown = "1" And vDowntext = "Down" Then
Call keybd_event(VK_DOWN, 0&, 0&, 0&)
vDown = "2"
End If
If vDown = "2" And vDowntext = "Up" Then
Call keybd_event(VK_DOWN, 0&, KEYEVENTF_KEYUP, 0&)
vDown = "1"
End If


'vDrucken
If vDrucken = "1" And vDruckentext = "Down" Then
Call keybd_event(VK_SNAPSHOT, 0&, 0&, 0&)
vDrucken = "2"
End If
If vDrucken = "2" And vDruckentext = "Up" Then
Call keybd_event(VK_SNAPSHOT, 0&, KEYEVENTF_KEYUP, 0&)
vDrucken = "1"
End If


'vEinfuegen
If vEinfuegen = "1" And vEinfuegentext = "Down" Then
Call keybd_event(VK_INSERT, 0&, 0&, 0&)
vEinfuegen = "2"
End If
If vEinfuegen = "2" And vEinfuegentext = "Up" Then
Call keybd_event(VK_INSERT, 0&, KEYEVENTF_KEYUP, 0&)
vEinfuegen = "1"
End If


'vEntfernen
If vEntfernen = "1" And vEntfernentext = "Down" Then
Call keybd_event(VK_DELETE, 0&, 0&, 0&)
vEntfernen = "2"
End If
If vEntfernen = "2" And vEntfernentext = "Up" Then
Call keybd_event(VK_DELETE, 0&, KEYEVENTF_KEYUP, 0&)
vEntfernen = "1"
End If


'v0
If v0 = "1" And v0text = "Down" Then
Call keybd_event(VK_0, 0&, 0&, 0&)
v0 = "2"
End If
If v0 = "2" And v0text = "Up" Then
Call keybd_event(VK_0, 0&, KEYEVENTF_KEYUP, 0&)
v0 = "1"
End If


'v1
If v1 = "1" And v1text = "Down" Then
Call keybd_event(VK_1, 0&, 0&, 0&)
v1 = "2"
End If
If v1 = "2" And v1text = "Up" Then
Call keybd_event(VK_1, 0&, KEYEVENTF_KEYUP, 0&)
v1 = "1"
End If


'v2
If v2 = "1" And v2text = "Down" Then
Call keybd_event(VK_2, 0&, 0&, 0&)
v2 = "2"
End If
If v2 = "2" And v2text = "Up" Then
Call keybd_event(VK_2, 0&, KEYEVENTF_KEYUP, 0&)
v2 = "1"
End If


'v3
If v3 = "1" And v3text = "Down" Then
Call keybd_event(VK_3, 0&, 0&, 0&)
v3 = "2"
End If
If v3 = "2" And v3text = "Up" Then
Call keybd_event(VK_3, 0&, KEYEVENTF_KEYUP, 0&)
v3 = "1"
End If


'v4
If v4 = "1" And v4text = "Down" Then
Call keybd_event(VK_4, 0&, 0&, 0&)
v4 = "2"
End If
If v4 = "2" And v4text = "Up" Then
Call keybd_event(VK_4, 0&, KEYEVENTF_KEYUP, 0&)
v4 = "1"
End If


'v5
If v5 = "1" And v5text = "Down" Then
Call keybd_event(VK_5, 0&, 0&, 0&)
v5 = "2"
End If
If v5 = "2" And v5text = "Up" Then
Call keybd_event(VK_5, 0&, KEYEVENTF_KEYUP, 0&)
v5 = "1"
End If


'v6
If v6 = "1" And v6text = "Down" Then
Call keybd_event(VK_6, 0&, 0&, 0&)
v6 = "2"
End If
If v6 = "2" And v6text = "Up" Then
Call keybd_event(VK_6, 0&, KEYEVENTF_KEYUP, 0&)
v6 = "1"
End If


'v7
If v7 = "1" And v7text = "Down" Then
Call keybd_event(VK_7, 0&, 0&, 0&)
v7 = "2"
End If
If v7 = "2" And v7text = "Up" Then
Call keybd_event(VK_7, 0&, KEYEVENTF_KEYUP, 0&)
v7 = "1"
End If


'v8
If v8 = "1" And v8text = "Down" Then
Call keybd_event(VK_8, 0&, 0&, 0&)
v8 = "2"
End If
If v8 = "2" And v8text = "Up" Then
Call keybd_event(VK_8, 0&, KEYEVENTF_KEYUP, 0&)
v8 = "1"
End If


'v9
If v9 = "1" And v9text = "Down" Then
Call keybd_event(VK_9, 0&, 0&, 0&)
v9 = "2"
End If
If v9 = "2" And v9text = "Up" Then
Call keybd_event(VK_9, 0&, KEYEVENTF_KEYUP, 0&)
v9 = "1"
End If


'vA
If vA = "1" And vAtext = "Down" Then
Call keybd_event(VK_A, 0&, 0&, 0&)
vA = "2"
End If
If vA = "2" And vAtext = "Up" Then
Call keybd_event(VK_A, 0&, KEYEVENTF_KEYUP, 0&)
vA = "1"
End If


'vB
If vB = "1" And vBtext = "Down" Then
Call keybd_event(VK_B, 0&, 0&, 0&)
vB = "2"
End If
If vB = "2" And vBtext = "Up" Then
Call keybd_event(VK_B, 0&, KEYEVENTF_KEYUP, 0&)
vB = "1"
End If


'vC
If vC = "1" And vCtext = "Down" Then
Call keybd_event(VK_C, 0&, 0&, 0&)
vC = "2"
End If
If vC = "2" And vCtext = "Up" Then
Call keybd_event(VK_C, 0&, KEYEVENTF_KEYUP, 0&)
vC = "1"
End If


'vD
If vD = "1" And vDtext = "Down" Then
Call keybd_event(VK_D, 0&, 0&, 0&)
vD = "2"
End If
If vD = "2" And vDtext = "Up" Then
Call keybd_event(VK_D, 0&, KEYEVENTF_KEYUP, 0&)
vD = "1"
End If


'vE
If vE = "1" And vEtext = "Down" Then
Call keybd_event(VK_E, 0&, 0&, 0&)
vE = "2"
End If
If vE = "2" And vEtext = "Up" Then
Call keybd_event(VK_E, 0&, KEYEVENTF_KEYUP, 0&)
vE = "1"
End If


'vF
If vF = "1" And vFtext = "Down" Then
Call keybd_event(VK_F, 0&, 0&, 0&)
vF = "2"
End If
If vF = "2" And vFtext = "Up" Then
Call keybd_event(VK_F, 0&, KEYEVENTF_KEYUP, 0&)
vF = "1"
End If


'vG
If vG = "1" And vGtext = "Down" Then
Call keybd_event(VK_G, 0&, 0&, 0&)
vG = "2"
End If
If vG = "2" And vGtext = "Up" Then
Call keybd_event(VK_G, 0&, KEYEVENTF_KEYUP, 0&)
vG = "1"
End If


'vH
If vH = "1" And vHtext = "Down" Then
Call keybd_event(VK_H, 0&, 0&, 0&)
vH = "2"
End If
If vH = "2" And vHtext = "Up" Then
Call keybd_event(VK_H, 0&, KEYEVENTF_KEYUP, 0&)
vH = "1"
End If


'vI
If vI = "1" And vItext = "Down" Then
Call keybd_event(VK_I, 0&, 0&, 0&)
vI = "2"
End If
If vI = "2" And vItext = "Up" Then
Call keybd_event(VK_I, 0&, KEYEVENTF_KEYUP, 0&)
vI = "1"
End If


'vJ
If vJ = "1" And vJtext = "Down" Then
Call keybd_event(VK_J, 0&, 0&, 0&)
vJ = "2"
End If
If vJ = "2" And vJtext = "Up" Then
Call keybd_event(VK_J, 0&, KEYEVENTF_KEYUP, 0&)
vJ = "1"
End If


'vK
If vK = "1" And vKtext = "Down" Then
Call keybd_event(VK_K, 0&, 0&, 0&)
vK = "2"
End If
If vK = "2" And vKtext = "Up" Then
Call keybd_event(VK_K, 0&, KEYEVENTF_KEYUP, 0&)
vK = "1"
End If


'vL
If vL = "1" And vLtext = "Down" Then
Call keybd_event(VK_L, 0&, 0&, 0&)
vL = "2"
End If
If vL = "2" And vLtext = "Up" Then
Call keybd_event(VK_L, 0&, KEYEVENTF_KEYUP, 0&)
vL = "1"
End If


'vM
If vM = "1" And vMtext = "Down" Then
Call keybd_event(VK_M, 0&, 0&, 0&)
vM = "2"
End If
If vM = "2" And vMtext = "Up" Then
Call keybd_event(VK_M, 0&, KEYEVENTF_KEYUP, 0&)
vM = "1"
End If


'vN
If vN = "1" And vNtext = "Down" Then
Call keybd_event(VK_N, 0&, 0&, 0&)
vN = "2"
End If
If vN = "2" And vNtext = "Up" Then
Call keybd_event(VK_N, 0&, KEYEVENTF_KEYUP, 0&)
vN = "1"
End If


'vO
If vO = "1" And vOtext = "Down" Then
Call keybd_event(VK_O, 0&, 0&, 0&)
vO = "2"
End If
If vO = "2" And vOtext = "Up" Then
Call keybd_event(VK_O, 0&, KEYEVENTF_KEYUP, 0&)
vO = "1"
End If


'vP
If vP = "1" And vPtext = "Down" Then
Call keybd_event(VK_P, 0&, 0&, 0&)
vP = "2"
End If
If vP = "2" And vPtext = "Up" Then
Call keybd_event(VK_P, 0&, KEYEVENTF_KEYUP, 0&)
vP = "1"
End If


'vQ
If vQ = "1" And vQtext = "Down" Then
Call keybd_event(VK_Q, 0&, 0&, 0&)
vQ = "2"
End If
If vQ = "2" And vQtext = "Up" Then
Call keybd_event(VK_Q, 0&, KEYEVENTF_KEYUP, 0&)
vQ = "1"
End If


'vR
If vR = "1" And vRtext = "Down" Then
Call keybd_event(VK_R, 0&, 0&, 0&)
vR = "2"
End If
If vR = "2" And vRtext = "Up" Then
Call keybd_event(VK_R, 0&, KEYEVENTF_KEYUP, 0&)
vR = "1"
End If


'vS
If vS = "1" And vStext = "Down" Then
Call keybd_event(VK_S, 0&, 0&, 0&)
vS = "2"
End If
If vS = "2" And vStext = "Up" Then
Call keybd_event(VK_S, 0&, KEYEVENTF_KEYUP, 0&)
vS = "1"
End If


'vT
If vT = "1" And vTtext = "Down" Then
Call keybd_event(VK_T, 0&, 0&, 0&)
vT = "2"
End If
If vT = "2" And vTtext = "Up" Then
Call keybd_event(VK_T, 0&, KEYEVENTF_KEYUP, 0&)
vT = "1"
End If


'vU
If vU = "1" And vUtext = "Down" Then
Call keybd_event(VK_U, 0&, 0&, 0&)
vU = "2"
End If
If vU = "2" And vUtext = "Up" Then
Call keybd_event(VK_U, 0&, KEYEVENTF_KEYUP, 0&)
vU = "1"
End If


'vV
If vV = "1" And vVtext = "Down" Then
Call keybd_event(VK_V, 0&, 0&, 0&)
vV = "2"
End If
If vV = "2" And vVtext = "Up" Then
Call keybd_event(VK_V, 0&, KEYEVENTF_KEYUP, 0&)
vV = "1"
End If


'vW
If vW = "1" And vWtext = "Down" Then
Call keybd_event(VK_W, 0&, 0&, 0&)
vW = "2"
End If
If vW = "2" And vWtext = "Up" Then
Call keybd_event(VK_W, 0&, KEYEVENTF_KEYUP, 0&)
vW = "1"
End If


'vX
If vX = "1" And vXtext = "Down" Then
Call keybd_event(VK_X, 0&, 0&, 0&)
vX = "2"
End If
If vX = "2" And vXtext = "Up" Then
Call keybd_event(VK_X, 0&, KEYEVENTF_KEYUP, 0&)
vX = "1"
End If


'vX
If vX = "1" And vXtext = "Down" Then
Call keybd_event(VK_X, 0&, 0&, 0&)
vX = "2"
End If
If vX = "2" And vXtext = "Up" Then
Call keybd_event(VK_X, 0&, KEYEVENTF_KEYUP, 0&)
vX = "1"
End If


'vY
If vY = "1" And vYtext = "Down" Then
Call keybd_event(VK_Y, 0&, 0&, 0&)
vY = "2"
End If
If vY = "2" And vYtext = "Up" Then
Call keybd_event(VK_Y, 0&, KEYEVENTF_KEYUP, 0&)
vY = "1"
End If


'vZ
If vZ = "1" And vZtext = "Down" Then
Call keybd_event(VK_Z, 0&, 0&, 0&)
vZ = "2"
End If
If vZ = "2" And vZtext = "Up" Then
Call keybd_event(VK_Z, 0&, KEYEVENTF_KEYUP, 0&)
vZ = "1"
End If


'vStartkey
If vStartkey = "1" And vStartkeytext = "Down" Then
Call keybd_event(VK_STARTKEY, 0&, 0&, 0&)
vStartkey = "2"
End If
If vStartkey = "2" And vStartkeytext = "Up" Then
Call keybd_event(VK_STARTKEY, 0&, KEYEVENTF_KEYUP, 0&)
vStartkey = "1"
End If


'vKontext
If vKontext = "1" And vKontexttext = "Down" Then
Call keybd_event(VK_CONTEXTKEY, 0&, 0&, 0&)
vKontext = "2"
End If
If vKontext = "2" And vKontexttext = "Up" Then
Call keybd_event(VK_CONTEXTKEY, 0&, KEYEVENTF_KEYUP, 0&)
vKontext = "1"
End If


'vNum0
If vNum0 = "1" And vNum0text = "Down" Then
Call keybd_event(VK_NUMPAD0, 0&, 0&, 0&)
vNum0 = "2"
End If
If vNum0 = "2" And vNum0text = "Up" Then
Call keybd_event(VK_NUMPAD0, 0&, KEYEVENTF_KEYUP, 0&)
vNum0 = "1"
End If


'vNum1
If vNum1 = "1" And vNum1text = "Down" Then
Call keybd_event(VK_NUMPAD1, 0&, 0&, 0&)
vNum1 = "2"
End If
If vNum1 = "2" And vNum1text = "Up" Then
Call keybd_event(VK_NUMPAD1, 0&, KEYEVENTF_KEYUP, 0&)
vNum1 = "1"
End If


'vNum2
If vNum2 = "1" And vNum2text = "Down" Then
Call keybd_event(VK_NUMPAD2, 0&, 0&, 0&)
vNum2 = "2"
End If
If vNum2 = "2" And vNum2text = "Up" Then
Call keybd_event(VK_NUMPAD2, 0&, KEYEVENTF_KEYUP, 0&)
vNum2 = "1"
End If


'vNum3
If vNum3 = "1" And vNum3text = "Down" Then
Call keybd_event(VK_NUMPAD3, 0&, 0&, 0&)
vNum3 = "2"
End If
If vNum3 = "2" And vNum3text = "Up" Then
Call keybd_event(VK_NUMPAD3, 0&, KEYEVENTF_KEYUP, 0&)
vNum3 = "1"
End If


'vNum4
If vNum4 = "1" And vNum4text = "Down" Then
Call keybd_event(VK_NUMPAD4, 0&, 0&, 0&)
vNum4 = "2"
End If
If vNum4 = "2" And vNum4text = "Up" Then
Call keybd_event(VK_NUMPAD4, 0&, KEYEVENTF_KEYUP, 0&)
vNum4 = "1"
End If


'vNum5
If vNum5 = "1" And vNum5text = "Down" Then
Call keybd_event(VK_NUMPAD5, 0&, 0&, 0&)
vNum5 = "2"
End If
If vNum5 = "2" And vNum5text = "Up" Then
Call keybd_event(VK_NUMPAD5, 0&, KEYEVENTF_KEYUP, 0&)
vNum5 = "1"
End If


'vNum6
If vNum6 = "1" And vNum6text = "Down" Then
Call keybd_event(VK_NUMPAD6, 0&, 0&, 0&)
vNum6 = "2"
End If
If vNum6 = "2" And vNum6text = "Up" Then
Call keybd_event(VK_NUMPAD6, 0&, KEYEVENTF_KEYUP, 0&)
vNum6 = "1"
End If


'vNum7
If vNum7 = "1" And vNum7text = "Down" Then
Call keybd_event(VK_NUMPAD7, 0&, 0&, 0&)
vNum7 = "2"
End If
If vNum7 = "2" And vNum7text = "Up" Then
Call keybd_event(VK_NUMPAD7, 0&, KEYEVENTF_KEYUP, 0&)
vNum7 = "1"
End If


'vNum8
If vNum8 = "1" And vNum8text = "Down" Then
Call keybd_event(VK_NUMPAD8, 0&, 0&, 0&)
vNum8 = "2"
End If
If vNum8 = "2" And vNum8text = "Up" Then
Call keybd_event(VK_NUMPAD8, 0&, KEYEVENTF_KEYUP, 0&)
vNum8 = "1"
End If


'vNum9
If vNum9 = "1" And vNum9text = "Down" Then
Call keybd_event(VK_NUMPAD9, 0&, 0&, 0&)
vNum9 = "2"
End If
If vNum9 = "2" And vNum9text = "Up" Then
Call keybd_event(VK_NUMPAD9, 0&, KEYEVENTF_KEYUP, 0&)
vNum9 = "1"
End If


'vNummal
If vNummal = "1" And vNummaltext = "Down" Then
Call keybd_event(VK_MULTIPLY, 0&, 0&, 0&)
vNummal = "2"
End If
If vNummal = "2" And vNummaltext = "Up" Then
Call keybd_event(VK_MULTIPLY, 0&, KEYEVENTF_KEYUP, 0&)
vNummal = "1"
End If


'vNumplus
If vNumplus = "1" And vNumplustext = "Down" Then
Call keybd_event(VK_ADD, 0&, 0&, 0&)
vNumplus = "2"
End If
If vNumplus = "2" And vNumplustext = "Up" Then
Call keybd_event(VK_ADD, 0&, KEYEVENTF_KEYUP, 0&)
vNumplus = "1"
End If


'vNumminus
If vNumminus = "1" And vNumminustext = "Down" Then
Call keybd_event(VK_SUBTRACT, 0&, 0&, 0&)
vNumminus = "2"
End If
If vNumminus = "2" And vNumminustext = "Up" Then
Call keybd_event(VK_SUBTRACT, 0&, KEYEVENTF_KEYUP, 0&)
vNumminus = "1"
End If


'vNumkomma
If vNumkomma = "1" And vNumkommatext = "Down" Then
Call keybd_event(VK_DECIMAL, 0&, 0&, 0&)
vNumkomma = "2"
End If
If vNumkomma = "2" And vNumkommatext = "Up" Then
Call keybd_event(VK_DECIMAL, 0&, KEYEVENTF_KEYUP, 0&)
vNumkomma = "1"
End If


'vNumteilen
If vNumteilen = "1" And vNumteilentext = "Down" Then
Call keybd_event(VK_DIVIDE, 0&, 0&, 0&)
vNumteilen = "2"
End If
If vNumteilen = "2" And vNumteilentext = "Up" Then
Call keybd_event(VK_DIVIDE, 0&, KEYEVENTF_KEYUP, 0&)
vNumteilen = "1"
End If


'vF1
If vF1 = "1" And vF1text = "Down" Then
Call keybd_event(VK_F1, 0&, 0&, 0&)
vF1 = "2"
End If
If vF1 = "2" And vF1text = "Up" Then
Call keybd_event(VK_F1, 0&, KEYEVENTF_KEYUP, 0&)
vF1 = "1"
End If


'vF2
If vF2 = "1" And vF2text = "Down" Then
Call keybd_event(VK_F2, 0&, 0&, 0&)
vF2 = "2"
End If
If vF2 = "2" And vF2text = "Up" Then
Call keybd_event(VK_F2, 0&, KEYEVENTF_KEYUP, 0&)
vF2 = "1"
End If


'vF3
If vF3 = "1" And vF3text = "Down" Then
Call keybd_event(VK_F3, 0&, 0&, 0&)
vF3 = "2"
End If
If vF3 = "2" And vF3text = "Up" Then
Call keybd_event(VK_F3, 0&, KEYEVENTF_KEYUP, 0&)
vF3 = "1"
End If


'vF4
If vF4 = "1" And vF4text = "Down" Then
Call keybd_event(VK_F4, 0&, 0&, 0&)
vF4 = "2"
End If
If vF4 = "2" And vF4text = "Up" Then
Call keybd_event(VK_F4, 0&, KEYEVENTF_KEYUP, 0&)
vF4 = "1"
End If


'vF5
If vF5 = "1" And vF5text = "Down" Then
Call keybd_event(VK_F5, 0&, 0&, 0&)
vF5 = "2"
End If
If vF5 = "2" And vF5text = "Up" Then
Call keybd_event(VK_F5, 0&, KEYEVENTF_KEYUP, 0&)
vF5 = "1"
End If


'vF6
If vF6 = "1" And vF6text = "Down" Then
Call keybd_event(VK_F6, 0&, 0&, 0&)
vF6 = "2"
End If
If vF6 = "2" And vF6text = "Up" Then
Call keybd_event(VK_F6, 0&, KEYEVENTF_KEYUP, 0&)
vF6 = "1"
End If


'vF7
If vF7 = "1" And vF7text = "Down" Then
Call keybd_event(VK_F7, 0&, 0&, 0&)
vF7 = "2"
End If
If vF7 = "2" And vF7text = "Up" Then
Call keybd_event(VK_F7, 0&, KEYEVENTF_KEYUP, 0&)
vF7 = "1"
End If


'vF8
If vF8 = "1" And vF8text = "Down" Then
Call keybd_event(VK_F8, 0&, 0&, 0&)
vF8 = "2"
End If
If vF8 = "2" And vF8text = "Up" Then
Call keybd_event(VK_F8, 0&, KEYEVENTF_KEYUP, 0&)
vF8 = "1"
End If


'vF9
If vF9 = "1" And vF9text = "Down" Then
Call keybd_event(VK_F9, 0&, 0&, 0&)
vF9 = "2"
End If
If vF9 = "2" And vF9text = "Up" Then
Call keybd_event(VK_F9, 0&, KEYEVENTF_KEYUP, 0&)
vF9 = "1"
End If


'vF10
If vF10 = "1" And vF10text = "Down" Then
Call keybd_event(VK_F10, 0&, 0&, 0&)
vF10 = "2"
End If
If vF10 = "2" And vF10text = "Up" Then
Call keybd_event(VK_F10, 0&, KEYEVENTF_KEYUP, 0&)
vF10 = "1"
End If


'vF11
If vF11 = "1" And vF11text = "Down" Then
Call keybd_event(VK_F11, 0&, 0&, 0&)
vF11 = "2"
End If
If vF11 = "2" And vF11text = "Up" Then
Call keybd_event(VK_F11, 0&, KEYEVENTF_KEYUP, 0&)
vF11 = "1"
End If


'vF12
If vF12 = "1" And vF12text = "Down" Then
Call keybd_event(VK_F12, 0&, 0&, 0&)
vF12 = "2"
End If
If vF12 = "2" And vF12text = "Up" Then
Call keybd_event(VK_F12, 0&, KEYEVENTF_KEYUP, 0&)
vF12 = "1"
End If


'vNumlock
If vNumlock = "1" And vNumlocktext = "Down" Then
Call keybd_event(VK_NUMLOCK, 0&, 0&, 0&)
vNumlock = "2"
End If
If vNumlock = "2" And vNumlocktext = "Up" Then
Call keybd_event(VK_NUMLOCK, 0&, KEYEVENTF_KEYUP, 0&)
vNumlock = "1"
End If


'vScrolllock
If vScrolllock = "1" And vScrolllocktext = "Down" Then
Call keybd_event(VK_OEM_SCROLL, 0&, 0&, 0&)
vScrolllock = "2"
End If
If vScrolllock = "2" And vScrolllocktext = "Up" Then
Call keybd_event(VK_OEM_SCROLL, 0&, KEYEVENTF_KEYUP, 0&)
vScrolllock = "1"
End If


'vLshift
If vLshift = "1" And vLshifttext = "Down" Then
Call keybd_event(VK_LSHIFT, 0&, 0&, 0&)
vLshift = "2"
End If
If vLshift = "2" And vLshifttext = "Up" Then
Call keybd_event(VK_LSHIFT, 0&, KEYEVENTF_KEYUP, 0&)
vLshift = "1"
End If


'vRshift
If vRshift = "1" And vRshifttext = "Down" Then
Call keybd_event(VK_RSHIFT, 0&, 0&, 0&)
vRshift = "2"
End If
If vRshift = "2" And vRshifttext = "Up" Then
Call keybd_event(VK_RSHIFT, 0&, KEYEVENTF_KEYUP, 0&)
vRshift = "1"
End If


'vLstrg
If vLstrg = "1" And vLstrgtext = "Down" Then
Call keybd_event(VK_LCONTROL, 0&, 0&, 0&)
vLstrg = "2"
End If
If vLstrg = "2" And vLstrgtext = "Up" Then
Call keybd_event(VK_LCONTROL, 0&, KEYEVENTF_KEYUP, 0&)
vLstrg = "1"
End If


'vRstrg
If vRstrg = "1" And vRstrgtext = "Down" Then
Call keybd_event(VK_RCONTROL, 0&, 0&, 0&)
vRstrg = "2"
End If
If vRstrg = "2" And vRstrgtext = "Up" Then
Call keybd_event(VK_RCONTROL, 0&, KEYEVENTF_KEYUP, 0&)
vRstrg = "1"
End If


'vLalt
If vLalt = "1" And vLalttext = "Down" Then
Call keybd_event(VK_LMENU, 0&, 0&, 0&)
vLalt = "2"
End If
If vLalt = "2" And vLalttext = "Up" Then
Call keybd_event(VK_LMENU, 0&, KEYEVENTF_KEYUP, 0&)
vLalt = "1"
End If


'vRalt
If vRalt = "1" And vRalttext = "Down" Then
Call keybd_event(VK_RMENU, 0&, 0&, 0&)
vRalt = "2"
End If
If vRalt = "2" And vRalttext = "Up" Then
Call keybd_event(VK_RMENU, 0&, KEYEVENTF_KEYUP, 0&)
vRalt = "1"
End If


'vsimikolon
If vsimikolon = "1" And vsimikolontext = "Down" Then
Call keybd_event(VK_OEM_1, 0&, 0&, 0&)
vsimikolon = "2"
End If
If vsimikolon = "2" And vsimikolontext = "Up" Then
Call keybd_event(VK_OEM_1, 0&, KEYEVENTF_KEYUP, 0&)
vsimikolon = "1"
End If


'vplus
If vplus = "1" And vplustext = "Down" Then
Call keybd_event(VK_OEM_PLUS, 0&, 0&, 0&)
vplus = "2"
End If
If vplus = "2" And vplustext = "Up" Then
Call keybd_event(VK_OEM_PLUS, 0&, KEYEVENTF_KEYUP, 0&)
vplus = "1"
End If


'vkomma
If vkomma = "1" And vkommatext = "Down" Then
Call keybd_event(VK_OEM_COMMA, 0&, 0&, 0&)
vkomma = "2"
End If
If vkomma = "2" And vkommatext = "Up" Then
Call keybd_event(VK_OEM_COMMA, 0&, KEYEVENTF_KEYUP, 0&)
vkomma = "1"
End If


'vMinus
If vMinus = "1" And vMinustext = "Down" Then
Call keybd_event(VK_OEM_MINUS, 0&, 0&, 0&)
vMinus = "2"
End If
If vMinus = "2" And vMinustext = "Up" Then
Call keybd_event(VK_OEM_MINUS, 0&, KEYEVENTF_KEYUP, 0&)
vMinus = "1"
End If


'vPunkt
If vPunkt = "1" And vPunkttext = "Down" Then
Call keybd_event(VK_OEM_PERIOD, 0&, 0&, 0&)
vPunkt = "2"
End If
If vPunkt = "2" And vPunkttext = "Up" Then
Call keybd_event(VK_OEM_PERIOD, 0&, KEYEVENTF_KEYUP, 0&)
vPunkt = "1"
End If


'vGeteil
If vGeteil = "1" And vGeteiltext = "Down" Then
Call keybd_event(VK_OEM_2, 0&, 0&, 0&)
vGeteil = "2"
End If
If vGeteil = "2" And vGeteiltext = "Up" Then
Call keybd_event(VK_OEM_2, 0&, KEYEVENTF_KEYUP, 0&)
vGeteil = "1"
End If


'vStich
If vStich = "1" And vStichtext = "Down" Then
Call keybd_event(VK_OEM_3, 0&, 0&, 0&)
vStich = "2"
End If
If vStich = "2" And vStichtext = "Up" Then
Call keybd_event(VK_OEM_3, 0&, KEYEVENTF_KEYUP, 0&)
vStich = "1"
End If


'vEklammera
If vEklammera = "1" And vEklammeratext = "Down" Then
Call keybd_event(VK_OEM_4, 0&, 0&, 0&)
vEklammera = "2"
End If
If vEklammera = "2" And vEklammeratext = "Up" Then
Call keybd_event(VK_OEM_4, 0&, KEYEVENTF_KEYUP, 0&)
vEklammera = "1"
End If


'vGeteilb
If vGeteilb = "1" And vGeteilbtext = "Down" Then
Call keybd_event(VK_OEM_5, 0&, 0&, 0&)
vGeteilb = "2"
End If
If vGeteilb = "2" And vGeteilbtext = "Up" Then
Call keybd_event(VK_OEM_5, 0&, KEYEVENTF_KEYUP, 0&)
vGeteilb = "1"
End If


'vEklammerb
If vEklammerb = "1" And vEklammerbtext = "Down" Then
Call keybd_event(VK_OEM_6, 0&, 0&, 0&)
vEklammerb = "2"
End If
If vEklammerb = "2" And vEklammerbtext = "Up" Then
Call keybd_event(VK_OEM_6, 0&, KEYEVENTF_KEYUP, 0&)
vEklammerb = "1"
End If


'vLwin
If vLwin = "1" And vLwintext = "Down" Then
Call keybd_event(VK_LWIN, 0&, 0&, 0&)
vLwin = "2"
End If
If vLwin = "2" And vLwintext = "Up" Then
Call keybd_event(VK_LWIN, 0&, KEYEVENTF_KEYUP, 0&)
vLwin = "1"
End If


End Sub

Vielen Dank im Voraus,

Mit freundlichen Grüßen

RoBlon
 
So ganz spontan: arbeite mit einem Array, dass die ganzen Tastencodes und -kürzel enthält. Du kannst dann in einer Schleife abfragen, ob das aktuelle Event auf irgendeine Taste in dem Array passt und entsprechend darauf reagieren, anstatt jeden einzelnen Wert in einer Variable abzufragen. So kannst du die ewig lange If-Abfrage auf eine kleine Schleife reduzieren. Für die vielen Deklarationen gibt es bestimmt auch einen weg. Eventuell lassen die sich auch in das Array packen ;)

HTH
 
HI,

erstmal vielen dank für deine Antwort,
hast du zufällig ne kleinen Source Code... also so, damit ich mich da mal reíndenken kann ???? ;)

Vielen Dank im Voraus.

MFG
RoBlon
 
Sry, aber beschäftige dich mal mit Funktionen ... du hast ja zig-mal das gleiche aufgeschrieben. Von VB hab ich keine Ahnung, aber mach doch ne Funktion wo du die Variable übergibst, weil du macht ja überall das gleiche.

mfg
Tischler
 
@Tischler

Hi,
hab ich schon probiert, das geht nur wenn man eine Taste drückt, wenn mehrere Tasen gleichzeitig gedrückt (auf dem Gamepad) werden dann wird immer nur einen Taste simuliert..... sogehts leider nicht, oder vllt weiß du ja noch eine andere lösung....

MFG
RoBlon
 
Ich muss den anderen recht geben, du wiederholst ein und den selben Text immer wieder und wieder...
Ist schon ein wenig dumm, sorry ^^
Also ich mein, ich hätte gar nicht an solch einem Code geschrieben, weil es mir zu dumm wäre, ständig Copy&Paste zu machen.
Mit VB kenn ich mich aber auch nicht aus.
Setz dich halt mit Arrays auseinander, dann passt das sehr bald schon.
Oder googel nach ähnlichen Problemen und ihren Lösungen...

MfG
trxag
 
HI,

@trxag, da du ja von VB6 nichts verstehst, wieso mischt du dich dann da überhaupt ein, ich finde dein Post ist echt....
naja aber immer hin haste jetzt +1 Post......
Außerdem hat es den Anschein das du nicht weiß, das man Programme programmieren kann die diesen 1700 Zeilen langen Code in 2-3Sekunden erstellt haben.....
Denn ich bin ja nicht blöd, und mach das alles von hand... ich hab mir ne prog geschieben was alles passend zusammenbaut.....
und das mit den Arrays zum allgemeinen Verkürzen kannste knicken, da es probleme macht wenn man am gamepad mehrere Tasten auf ein mal drückt....
Trotzdem Nochmal danke für den unnützigen doppelpost.....


MFG

RoBlon

PS: Vllt hat ja jemand noch eine andere SINNVOLLE idee....
 
Na, halt mal den Ball flach - wir haben uns doch alle lieb ;)

Was ich nicht so ganz verstehe, warum das mit einem Array nicht funktionieren soll? Es spielt doch keine Rolle, ob du nun die Events aus einem Array ausliest und darauf reagierst oder ob du in einer großen If-Abfrage die Events einzeln abfragst und verarbeitest. Außerdem hättest du doch schon ein Array mit den einzelnen Events und ihren Status (nein, Stati gibt es nicht :D ), wenn du den Code-Block dynamisch erzeugst :p

Um das mit dem Array mal etwa genauer zu erkären: Du machst ja nichts anderes, als immer wieder die gleiche If-Abfrage auf verschiedene Werte zu setzen. Das kannst du verkürzen, indem du die Werte in einem mehrdimensionalen und eventuell assoziativen Array ablegst und dann dieses Array durchläufst und an eine einzige If-Abfrage übergibts. Beugt Tipp-Fehler vor und macht das Ganze viel übersichtlicher. Hier mal etwas Pseudo-Code. Lang, lang ist's her, als ich VB gebastelt habe :D

Code:
var keys = array(array('taste' => 'back1',
'status' => 0,
'text' => 'Up'
'event' => VK_BACK1),
array('taste' => 'back2',
'status' => 0,
'event' => VK_BACK2)
array('taste' => 'back3',
'status' => 0,
'event' => VK_BACK3));

function Tastendruck() {
global keys;

foreach(keys as key) {
if(key['taste'] = gedrucktetaste) {
if(key['status'] = 1 and key['text'] = 'Down') {
call key_event(key['event'], null, null, ...);
}
if(key['status'] = 2 and key['text'] = 'Up') {
call key_event(key['event'], null, null, ...);
}
}
}
}
Nur mal so zur Veranschaulichung, wie's funktionieren könnte. Du musst nur noch deinen Code darauf portieren; eine 1:1 Anleitung ist es nicht, denn ich weiß ja nicht genau, was du mit deinem Code bewirken willst und ich bin auch zu faul, mich jetzt näher damit zu befassen ;)

HTH
 
Status
Für weitere Antworten geschlossen.

Ähnliche Themen

Zurück
Oben Unten