Aenderung der Tastaturbelegung unter Windows NT, 2000 und XP: Man schreibe eine Registry-Datei (z.B. namens DefineKeys.reg) mit folgendem Aufbau: --- Anfang, diese Zeile nicht mitkopieren! --- Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "Scancode Map"=hex:00,00,00,00,00,00,00,00,#T,00,00,00,x1,x2,y1,y2,...,00,00 --- Ende, diese Zeile nicht mitkopieren! --- Dabei bedeutet #T die Anzahl umzudefinierender Tasten plus eins; x1,x2 ist der zwei- stellige Scancode (1SC, 2SC) der neuen Tastenbelegung (Zielcode) und y1, y2 ist der zweistellige Scancode (1SC, 2SC) der originalen Belegung (Quelle). Fuer mehr als eine Tastenneudefinition aendert man also #T entsprechend und haengt entsprechend viele x1,x2,y1,y2 Paare an - aber nicht die beiden letzten Null-Bytes vergessen! Beispiel: Um die beiden Windows-Tasten auf die linke und rechte Shift-Taste umzulegen sowie die Windows-Kontext-Taste auf AltGR, sieht die Registry-Datei so aus: (Mit \ signalisiert man, dass nach dem Zeilenumbruch weitere Daten folgen) --- Anfang, diese Zeile nicht mitkopieren! --- Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "Scancode Map"=hex:00,00,00,00,00,00,00,00,04,00,00,00,\ 2a,00,5b,e0,\ 36,00,5c,e0,\ 38,e0,5d,e0,\ 00,00 --- Ende, diese Zeile nicht mitkopieren! --- Diese Aenderungen gelten immer fuer alle Benutzer, also nicht nur den jeweils angemeldeten, daher Vorsicht bei allen Mehrbenutzer-Systemen! Um eine Taste mit "gar nichts" zu belegen, muss der Ziel-Scancode 00,00 lauten. Beachte, dass es sich hier um hardwaremaessige Codes handelt, nicht zu verwechseln mit ASCII oder UniCode! Es gibt auch keine Unterscheidung zwischen z.B. grossen und kleinen Buchstaben; ein grosses A ist eine Kombination aus Shift und a, also kein eigener Tasten- Scancode! Es ist nicht praktikabel, die gesamte Tastenbelegung mittels Scancodes neu zu definieren - das macht man besser weiterhin ueber das Tastaturlayout. Sinnvoll sind die Scancodes jedoch, um an Tasten heranzukommen, die im Tastaturlayout nicht zu erreichen sind, also z.B. alle "Spezialtasten" wie Windows-, Funktions- und Cursortasten. Hier die Scancodes handelsueblicher 101/102-Tastaturen (ohne Gewaehr): Name: 1SC 2SC --------------- Esc 01 00 F1 3B 00 F2 3c 00 F3 3d 00 F4 3e 00 F5 3f 00 F6 40 00 F7 41 00 F8 42 00 F9 43 00 F10 44 00 F11 57 00 F12 58 00 Num 45 00 Druck liefert keinen Scan Code (?) Rollen 46 00 Pause 1d e1 Shift left 2a 00 Shift right 36 00 Tab 0f 00 Caps 3a 00 Ctrl left 1d 00 Ctrl right 1d e0 Alt 38 00 AltGr 38 e0 Backspace 0e 00 Home 47 e0 End 4f e0 Page Up 49 e0 Page Down 51 e0 Up 48 e0 Down 50 e0 Left 4b e0 Right 4d e0 Insert 52 e0 Delete 53 e0 Enter 1c 00 Space 39 00 Num / 35 e0 Num * 37 00 Num - 4a 00 Num + 4e 00 Num Enter 1c e0 Num , 53 00 Num 1 4f 00 Num 2 50 00 Num 3 51 00 Num 4 4b 00 Num 5 4c 00 Num 6 4d 00 Num 7 47 00 Num 8 48 00 Num 9 49 00 Num 0 52 00 Windows left 5b e0 Windows right 5c e0 Windows context 5d e0 ^ 29 00 1 02 00 2 03 00 3 04 00 4 05 00 5 06 00 6 07 00 7 08 00 8 09 00 9 0a 00 0 0b 00 ß 0c 00 ´ 0d 00 q 10 00 w 11 00 e 12 00 r 13 00 t 14 00 z 15 00 u 16 00 i 17 00 o 18 00 p 19 00 ü 1a 00 + 1b 00 # 2b 00 a 1e 00 s 1f 00 d 20 00 f 21 00 g 22 00 h 23 00 j 24 00 k 25 00 l 26 00 ö 27 00 ä 28 00 y 2c 00 x 2d 00 c 2e 00 v 2f 00 b 30 00 n 31 00 m 32 00 , 33 00 . 34 00 - 35 00 < 56 00 Viel Erfolg beim Basteln, Dirk.Schwarzmann@gmx.de