Meanwhile I'm at another workplace, where I run win2k. Here the Altgr key works. I spyed the windows messages and came up with something peculiar:
w2k: (pressed 3*backslash) <00001> 002C029C P WM_KEYDOWN nVirtKey:VK_CONTROL cRepeat:1 ScanCode:1D fExtended:0 fAltDown:0 fRepeat:0 fUp:0 <00002> 002C029C P WM_KEYDOWN nVirtKey:VK_MENU cRepeat:1 ScanCode:38 fExtended:1 fAltDown:1 fRepeat:0 fUp:0 <00003> 002C029C P WM_KEYDOWN nVirtKey:VK_CONTROL cRepeat:1 ScanCode:1D fExtended:0 fAltDown:1 fRepeat:1 fUp:0 <00004> 002C029C P WM_KEYDOWN nVirtKey:VK_MENU cRepeat:1 ScanCode:38 fExtended:1 fAltDown:1 fRepeat:1 fUp:0 <00005> 002C029C P WM_KEYDOWN nVirtKey:00DB cRepeat:1 ScanCode:0C fExtended:0 fAltDown:1 fRepeat:0 fUp:0 <00006> 002C029C P WM_KEYUP nVirtKey:00DB cRepeat:1 ScanCode:0C fExtended:0 fAltDown:1 fRepeat:1 fUp:1 <00007> 002C029C P WM_KEYDOWN nVirtKey:00DB cRepeat:1 ScanCode:0C fExtended:0 fAltDown:1 fRepeat:0 fUp:0 <00008> 002C029C P WM_KEYUP nVirtKey:00DB cRepeat:1 ScanCode:0C fExtended:0 fAltDown:1 fRepeat:1 fUp:1 <00009> 002C029C P WM_KEYDOWN nVirtKey:00DB cRepeat:1 ScanCode:0C fExtended:0 fAltDown:1 fRepeat:0 fUp:0 <00010> 002C029C P WM_KEYUP nVirtKey:00DB cRepeat:1 ScanCode:0C fExtended:0 fAltDown:1 fRepeat:1 fUp:1 <00011> 002C029C P WM_SYSKEYUP nVirtKey:VK_CONTROL cRepeat:1 ScanCode:1D fExtended:0 fAltDown:1 fRepeat:1 fUp:1 <00012> 002C029C P WM_KEYUP nVirtKey:VK_MENU cRepeat:1 ScanCode:38 fExtended:1 fAltDown:0 fRepeat:1 fUp:1 see the first 4 messages. apparently w2k sends <00001> WM_KEYDOWN nVirtKey:VK_CONTROL ... fAltDown:0 fRepeat:0 <00002> WM_KEYDOWN nVirtKey:VK_MENU ... fAltDown:1 fRepeat:0 <00003> WM_KEYDOWN nVirtKey:VK_CONTROL ... fAltDown:1 fRepeat:1 <00004> WM_KEYDOWN nVirtKey:VK_MENU ...fAltDown:1 fRepeat:1 It looks like it repeats the VK_CONTROL & VK_MENU msgs with altdown flag = 1 5 & 6 are the real key that gets pressed '�?\' while XP sends: (pressed 1*backslash) <00001> 005202C4 P WM_KEYDOWN nVirtKey:VK_CONTROL cRepeat:1 ScanCode:1D fExtended:0 fAltDown:0 fRepeat:0 fUp:0 <00002> 005202C4 P WM_KEYDOWN nVirtKey:VK_MENU cRepeat:1 ScanCode:38 fExtended:1 fAltDown:1 fRepeat:0 fUp:0 <00003> 005202C4 P WM_KEYDOWN nVirtKey:00DB cRepeat:1 ScanCode:0C fExtended:0 fAltDown:1 fRepeat:0 fUp:0 <00004> 005202C4 P WM_KEYUP nVirtKey:00DB cRepeat:1 ScanCode:0C fExtended:0 fAltDown:1 fRepeat:1 fUp:1 <00005> 005202C4 P WM_SYSKEYUP nVirtKey:VK_CONTROL cRepeat:1 ScanCode:1D fExtended:0 fAltDown:1 fRepeat:1 fUp:1 <00006> 005202C4 P WM_KEYUP nVirtKey:VK_MENU cRepeat:1 ScanCode:38 fExtended:1 fAltDown:0 fRepeat:1 fUp:1 here the keypress of '�?\' is sent directly after only 2 messages: <00001> WM_KEYDOWN nVirtKey:VK_CONTROL ... fAltDown:0 fRepeat:0 <00002> WM_KEYDOWN nVirtKey:VK_MENU ... fAltDown:1 fRepeat:0 <00003> WM_KEYDOWN nVirtKey:00DB ... fAltDown:1 fRepeat:0 fUp:0 <00004> WM_KEYUP nVirtKey:00DB ... fAltDown:1 fRepeat:1 fUp:1 <00005> WM_SYSKEYUP nVirtKey:VK_CONTROL ... <00006> WM_KEYUP nVirtKey:VK_MENU ... with the first 2 like the first 2 messages 2k sends. Therefore the keydown message with altdown=1 for VK_CONTROL and VK_MENU are missing. Could it be that cygwin is confused by the missing messages? Holger Holger B�hnke wrote: > Hi Alexander > >> This seem to be the problem. We had some reports that alt-gr does not >> work properly on (some) WinXP machines. Do you have WinXP? > > Yes, XP Prof., no Service Pack > > c:\>ver > Microsoft Windows XP [Version 5.1.2600] > >> There must be a subtile difference. Maybe with the timestamp of the >> message. Or the "Control down" and "alt down" messages come in >> reversed order. I don't have WinXP and can't test this. > > I attached the logfile of spy++ > > I pushed: > altgr (holding down) - 3x backsl - release altgr : out \\\ > altgr (holding down) - 3x backsl - release altgr : out \\\ > altgr (holding down) - 3x backsl - release altgr : out <nothing> > > bye > > Holger
