STEAM グループ
Steam Client Beta SteamBeta
STEAM グループ
Steam Client Beta SteamBeta
11,410
ゲーム中
63,913
オンライン
設立日
2013年1月8日
全てのスレッド > General Discussions > トピックの詳細
[Bug report] Source based games keep adding US keyboard layout
Hello! This issue has been reported long time ago but its still present and not resolved.

===
Whenever i start a source based game it adds US keyboard layout that is only seen in language bar and not in region and language settings in control panel.

I think it started happening when i reinstalled l4d2 and now it happens also with tf2, portal2, hl2ep2 and maybe all source based games.

To remove it i first have to add US keyboard layout and then remove it. I have only my local language as input in "region and language" and location set to united kingdom since i don`t want programs in my local language on windows 7 64bit.

It is very frustrating since it keeps changing the layout at random if i don`t remove it.
===
Original topic on Steam forums started by Linlin

> Windows 8 and 8.1 both have this bug
最近の変更はPerfect Playerが行いました; 2013年8月18日 3時46分
< >
91-105 / 152 のコメントを表示
THIS ANNOYS ME SO MUCH AND TILL 2019/5/31 IT STILL CAN'T BE FIXED
OS Environment: WIN10 Professional
Using Chinese and Japanese keyboard layouts.

################# METHOD 1 #################
RunninglVlan の投稿を引用:
I tried this solution[www.sevenforums.com] and deleted US registry keys:
  • Deleted branch HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Keyboard Layouts\00000409
  • Deleted correspondig registry key (00000409) from branch HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Keyboard Layout\DosKeybCodes
  • Did the same in branch HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002
  • It left me only with 2 English Input Languages in Language Bar Settings

This solved the problem, yay!


I'm using WIN10 and tried deleting registry keys but only found HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001, with no ControlSet002 branch.
After deleting 2 00000409 keys in ControlSet001 then reboot. Starting L4D2, boom, another EN-US keyboard.
################# METHOD 1 #################

################# METHOD 2 #################
0.00000244 の投稿を引用:
Fixed that for me:
Language preferences -> Additional date and time settings -> Change date time or regional settings -> administrative tab -> copy settings -> copy your current settings (check both checkboxes here) -> OK. After that it doesn't add any new keyboard layouts.

Done this and reboot, nothing happened too.
################# METHOD 2 #################

################# METHOD 3 #################
⭐Prostetnic Vogon Jeltz⭐ の投稿を引用:
Stone Cold Jane Austen の投稿を引用:
Could you please share the script?
In Powershell (or any CMD-Line app):

$1 = New-WinUserLanguageList en-GB (or your own regional code if different)

then hit RETURN
&

Set-WinUserLanguageList $1

HTH :slim:

I run this script with editing "en-GB" to my regional code "zh-Hans-CN", run the two commands only found Chinese and EN-US keyboard layouts remaining and Japanese keyboard gone. Help me if I'm doing it wrong.THX
################# METHOD 3 #################


最近の変更はChengjieが行いました; 2019年5月31日 18時36分
Stone Cold Jane Austen の投稿を引用:
Could you please share the script?

Edit for your keyboard layouts and make scheduler task to run for game.exe

Set-WinUserLanguageList -LanguageList fi, ru -Force
$1 = Get-WinUserLanguageList
$1.Add('en-US')
Set-WinUserLanguageList $1 -force


$1 = Get-WinUserLanguageList
$1.RemoveAll( { $args[0].LanguageTag -clike 'en*' } )
Set-WinUserLanguageList $1 -Force
最近の変更はinfernoが行いました; 2019年9月4日 10時07分
A-- 2019年9月28日 4時29分 
This bloody bug has been there for years and I have to disable the write access in the registry to prevent US keyboard to be added. So frustrating.
DDM 2019年11月7日 1時33分 
I have a similar issue, Source games keep adding primary keyboard layout for my region for some reason. I have CES Qwerty as default and US English as secondary.
Neryus 2019年11月18日 15時58分 
Hey guys.

Try the solution mentionned by "Stephen Sherry" here (scroll down a bit):

https://superuser.com/questions/1092246/how-to-prevent-windows-10-from-automatically-adding-keyboard-layouts-i-e-us-ke
Neryus の投稿を引用:
Hey guys.

Try the solution mentionned by "Stephen Sherry" here (scroll down a bit):

https://superuser.com/questions/1092246/how-to-prevent-windows-10-from-automatically-adding-keyboard-layouts-i-e-us-ke

I don't know why this "fix" being posted all the time, it have nothing to do with source games adding keyboard layout and it DOES NOT work.
RunninglVlan の投稿を引用:
I tried this solution[www.sevenforums.com] and deleted US registry keys:
  • Deleted branch HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Keyboard Layouts\00000409
  • Deleted correspondig registry key (00000409) from branch HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Keyboard Layout\DosKeybCodes
  • Did the same in branch HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002
  • It left me only with 2 English Input Languages in Language Bar Settings

This solved the problem, yay!

After that method my PC is slows down.. It solved the problem only visually..
ykimusic の投稿を引用:
After that method my PC is slows down.. It solved the problem only visually..
Something else slowed your PC down; pure coincidence that it occurred after altering that registry key. There's no way that a simple kb layout regkey would have such an effect...
♥♥♥♥ в рот вольво, спустя столько лет проблема до сих пор актуальна. И ни один из предложенных способов не помог.

-------
I ♥♥♥♥♥♥ Valve, after so many years the problem is still relevant. And none of the proposed methods helped.
Lovelady の投稿を引用:
♥♥♥♥ в рот вольво, спустя столько лет проблема до сих пор актуальна. И ни один из предложенных способов не помог.

-------
I ♥♥♥♥♥♥ Valve, after so many years the problem is still relevant. And none of the proposed methods helped.

мой способ работает, но нужно создавать задание для каждой игры на source.
Quite remarkable, this known and ubiquitous bug is celebrating its 10 year anniversary!
borschik の投稿を引用:
Same problem. Appears on Windows 8.1, on Windows 8 everything was fine.
inferno の投稿を引用:
Stone Cold Jane Austen の投稿を引用:
Could you please share the script?

Edit for your keyboard layouts and make scheduler task to run for game.exe

Script is the only solution that works for me. It is a doable and silent solution, so, well done inferno. And I came up with a my own version of the script for PowerShell, that first sets your language to en-US and then resets it with languages and keyboard layouts that I used to have. To my mind the origin of the problem is that the source application summons a keyboard layout with no assosiated language. Addind and removing the correspoding language fixes it, either manually, or with the script below:
$2 = New-WinUserLanguageList -Language "en-US" $2[0].InputMethodTips.Clear() $2[0].InputMethodTips.Add('0409:00000409') $2[0].InputMethodTips.Add('0409:00020409') Set-WinUserLanguageList -LanguageList $2 -force $1 = New-WinUserLanguageList -Language "en-US" $1[0].InputMethodTips.Clear() $1[0].InputMethodTips.Add('0409:00000409') $1[0].InputMethodTips.Add('0xxx:00000xxx') $1.Add('fr-FR') $1[0].InputMethodTips.Add('0xxx:00000xxx') $1[0].InputMethodTips.Add('0xxx:00000xxx') Set-WinUserLanguageList -LanguageList $1 -force
To make it work you have to change languages codes (like en-US and fr-FR) to languages you need and the same to the keyboard layouts (like 0409:00000409). In here I set two languages, where each will have two keyboards respectively. Also, in case your source application summons a layouts that are different from en-US, you have to edit the first part of the script so the correspoding language and layout would be added. The codes for layouts and languages that you have now could be obtained with the command Get-WinUserLanguageList:
PS C:\> Get-WinUserLanguageList LanguageTag : en-US Autonym : English (United States) EnglishName : English (United States) LocalizedName : English (United States) ScriptName : Latin InputMethodTips : {0409:00000409} Handwriting : False
The tricky part for me is to make the script run upon the game start/exit. In case I would have to use tasks scheduler with a certain trigger. Seems I have to use "event" as a trigger, but idk what events are generated by Dota 2, L4D2 etc. I saw some solutions like execute a notepad along with a game, as notepad is easy to identify as a trigger, but didn't try it yet.
In case someone is interested in a more detailed step by step guide - hit me up, I'll try to make something up
最近の変更はBackInFutureが行いました; 2020年8月7日 7時51分
BackInFuture の投稿を引用:
inferno の投稿を引用:


The tricky part for me is to make the script run upon the game start/exit. In case I would have to use tasks scheduler with a certain trigger. Seems I have to use "event" as a trigger, but idk what events are generated by Dota 2, L4D2 etc. I saw some solutions like execute a notepad along with a game, as notepad is easy to identify as a trigger, but didn't try it yet.
In case someone is interested in a more detailed step by step guide - hit me up, I'll try to make something up

you can use custom event XML to trigger when game.exe starts. here is example for apex legends. Not sure when exactly the game adds eng layout so I put 20 second delay after process execution

<QueryList> <Query Id="0" Path="Security"> <Select Path="Security"> *[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and Task = 13312 and (band(Keywords,9007199254740992)) and (EventID=4688)]] and *[EventData[Data[@Name='NewProcessName'] and (Data='Z:\Apex Legends\Apex\r5apex.exe')]] </Select> </Query> </QueryList>


and if you run your ps1 script with something like this

command = "powershell.exe -nologo -command Z:\enusdel.ps1" set shell = CreateObject("WScript.Shell") shell.Run command,0

it will be completely silent :)
最近の変更はinfernoが行いました; 2020年10月11日 6時22分
I tought only I have this bug or what
< >
91-105 / 152 のコメントを表示
ページ毎: 1530 50

全てのスレッド > General Discussions > トピックの詳細