I would like to automatically change the keyboard layout and I create a simple console application in Visual Basic adding the following:
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(New CultureInfo("ru"))
But when I compile this code it doesn't change the keyboard layout, so it remains what it was before compiling. What am I doing wrong?
There three ways to change keyboard language:
Using property
.CurrentInputLanguage
(only if input language installed)InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(New CultureInfo("ru-RU"))
Using property
.CurrentCulture
(only if input language installed)Using winapi function
.LoadKeyboardLayout
(slowly, works even if input language not installed)Additional
For check current culture:
Check is input language installed:
Switch to next locale identifier (keyboard layout):
Additional materials