How to change the keyboard in Windows the Shift key individually?


Warning: count(): Parameter must be an array or an object that implements Countable in /home/styllloz/public_html/qa-theme/donut-theme/qa-donut-layer.php on line 274
0 like 0 dislike
12 views
Prompt the program-switch keyboard for Windows 7/XP, which can be configured:
  1. left Shift — English layout.
  2. right Shift — Russian layout.

Punto Switcher not to offer. Now I use SwitchIt, but it's old and not everywhere works.
by | 12 views

4 Answers

0 like 0 dislike
procedure TForm1.Timer1Timer(Sender: TObject); var ThreadId, InputLocaleId: THandle; const English = $4090409; Russian = $4190419; begin ThreadId := GetWindowThreadProcessId(GetForegroundWindow()); InputLocaleId := GetKeyboardLayout(ThreadId); if Odd(GetAsyncKeyState(VK_LSHIFT)) then begin if InputLocaleId <> English then PostMessage(GetForegroundWindow(), WM_INPUTLANGCHANGEREQUEST, English, 0); end else if Odd(GetAsyncKeyState(VK_RSHIFT)) then begin if InputLocaleId <> Russian then PostMessage(GetForegroundWindow(), WM_INPUTLANGCHANGEREQUEST, Russian, 0); end; end; 

\r
Waste, and works with standard Windows and console.
Can add the "to tray" and accomplice.
\r
PS Can a global hook via a DLL, but this is clearly not 40 minutes.
by
0 like 0 dislike
I would suggest Punto Switcher.
by
0 like 0 dislike
The first thing that came to mind to write should not take more than 40 minutes.
by
0 like 0 dislike
There is a script for AutoHotKey, but there is a switch on the right Ctrl', so will need to be finished.
by

Related questions

0 like 0 dislike
1 answer
0 like 0 dislike
1 answer
0 like 0 dislike
5 answers
0 like 0 dislike
4 answers
110,608 questions
257,186 answers
0 comments
27,849 users