วิธีป้องกันไม่ให้ Windows 10 เพิ่มรูปแบบแป้นพิมพ์โดยอัตโนมัติ (เช่น US keyboard)


110

อัปเดต:นี่คือโพสต์ที่มีความยาวคุณสามารถข้ามไปยังคำตอบด้านล่าง


หมายเหตุ:รายการภาษาด่วนหมายถึงรายการในภาพหน้าจอด้านล่างซึ่งสามารถเข้าถึงได้ผ่านทางลัดWin + Space bar

ฉันมีสองภาษาสำหรับ Windows ตรวจสอบการสะกดในระบบของฉันภาษาอังกฤษ (สหรัฐอเมริกา)และฝรั่งเศส (สวิสเซอร์แลนด์)แต่อย่างไรก็ตามทั้งสองภาษาที่ถูกกำหนดค่าอย่างถูกต้องกับ "สวิสฝรั่งเศส" คีย์บอร์ด, คีย์บอร์ดสหรัฐป้อนข้อมูลช่วยให้ปรากฏในรายการนี้

ป้อนคำอธิบายรูปภาพที่นี่

นี่คือการตั้งค่าสำหรับภาษาอังกฤษ (สหรัฐอเมริกา)คุณสามารถเห็นอินพุตเพียงอย่างเดียวคือ "Swiss French":

ป้อนคำอธิบายรูปภาพที่นี่

เช่นเดียวกับFrançais (สวิส)อินพุตเพียงอย่างเดียวคือ "Swiss French":

ป้อนคำอธิบายรูปภาพที่นี่

ในแผงควบคุมทั้งคู่ถูกตั้งค่าเป็น Swiss French:

ป้อนคำอธิบายรูปภาพที่นี่

การตั้งค่าทั้งหมดของฉันถูกตั้งค่าให้ใช้ "รายการภาษา":

ป้อนคำอธิบายรูปภาพที่นี่ ป้อนคำอธิบายรูปภาพที่นี่

นี่คือบางสิ่งที่ฉันได้ลองไปแล้ว:

  • ฉันจัดการลบมันไปแล้วโดยการกำหนดค่าภาษายิมนาสติกโดยการเพิ่มและลบภาษามันก็จะกลับมาในที่สุด
  • ฉันได้ทำสิ่งนี้แล้ว: https://superuser.com/a/484595/168632
  • ไม่มีการกล่าวถึง US Keyboard ในการตั้งค่ารีจิสทรีของฉัน:

ป้อนคำอธิบายรูปภาพที่นี่

โปรดช่วยฉันหมดหวังนี่คือคอมพิวเตอร์เครื่องที่สามที่ใช้ Windows 10 และพวกเขาทั้งหมดทำสิ่งเดียวกัน


จะเป็นอย่างไรถ้าคุณต้องการสคริปต์ที่จะทำงานที่ Autostart + ลบรายการที่ไม่ต้องการ
Sergey Larin

Win + Shift + Space bar
SmartManoj


เฉพาะสิ่งนี้ใช้ได้สำหรับฉันanswer.microsoft.com/en-us/windows/forum/… และนี่ยังบล็อกจากการเพิ่มเลย์เอาต์ใหม่เว้นแต่คุณจะอนุญาต
rofrol

คำตอบ:


98

หากต้องการแก้ไขปัญหานี้ให้ลบโฟลเดอร์รีจิสตรีPreloadและออกจากระบบหรือรีสตาร์ทคอมพิวเตอร์:

HKEY_USERS\.DEFAULT\Keyboard Layout\Preload

ดูเหมือนว่าโฟลเดอร์นี้จะเป็นแบบดั้งเดิมที่หลงเหลืออยู่ซึ่งมีรูปแบบแป้นพิมพ์ที่ผู้ใช้ไม่ได้ระบุไว้เพื่อเพิ่มลงในรายการภาษาเมื่อผู้ใช้ลงชื่อเข้าใช้ในขณะที่การแก้ไขตัวเองทำงานผ่านการรีสตาร์ทในขณะที่เขียน โฟลเดอร์นี่คือบางส่วนที่ฉันชนเข้ากับบุคคล:

  • เดสก์ท็อประยะไกลไปยังคอมพิวเตอร์ที่มีเค้าโครงของสหรัฐอเมริกา
  • การใช้บัญชี Microsoft เดียวกันบนพีซีเครื่องอื่นที่ยังมีปัญหานี้อยู่

เมื่อใดก็ตามที่ปัญหากลับมาโฟลเดอร์รีจิสทรีนั้นจะต้องถูกลบอีกครั้ง

แก้ไข 2: ขอบคุณคำแนะนำของ @ Lu55 ต่อไปนี้เป็นหนึ่งซับที่สะดวกในการใช้พร้อมรับคำสั่งด้วยสิทธิ์ผู้ดูแลระบบ:

reg delete "HKEY_USERS\.DEFAULT\Keyboard Layout\Preload" /f

แก้ไข: ฉันได้สร้างRemovePreload.regไฟล์ข้อความที่มีเนื้อหาต่อไปนี้วิธีนี้การแก้ไขนี้สามารถนำกลับมาใช้ใหม่ได้อย่างง่ายดายทุกครั้งโดยไม่ต้องนำทางรีจิสทรี:

Windows Registry Editor Version 5.00

[-HKEY_USERS\.DEFAULT\Keyboard Layout\Preload]

ใช้นี้บันทึกไว้ในไฟล์ข้อความและเปลี่ยนนามสกุลจากไป.txt .regจากนั้นเมื่อใดก็ตามที่กลับมาคุณสามารถคลิกสองครั้งแล้วเริ่มใหม่หรือออกจากระบบ


1
ขอบคุณ! นี่เป็นสิ่งเดียวที่ในที่สุดก็แก้ไขให้ฉัน รูปแบบแป้นพิมพ์สหรัฐฯได้รับการเพิ่มเสมอเมื่อฉันเข้าสู่ระบบฉันสามารถลบออกได้โดยเพิ่มครั้งแรกแล้วลบออกเช่นคำตอบของ Snaiper แต่มันจะปรากฏขึ้นอีกครั้งเมื่อเริ่มต้นใหม่ ดูเหมือนว่าจะลบออกอย่างถาวร
The Oddler

3
มันจะปรากฏขึ้นหลังจากผ่านไประยะหนึ่ง
troorl

ใช่แล้วมันปรากฏขึ้นอีกครั้งสำหรับฉันตอนนี้ด้วย :( สามารถรีสตาร์ทได้เพียงครั้งเดียวโดยไม่ปรากฏขึ้นอีกดูเหมือนว่า
The Oddler

1
วิธีแก้ปัญหาของการเพิ่มและลบคีย์บอร์ดนั้นปลอดภัยและเป็น
แฮ็ค

คุณได้ลองแทนที่จะลบPreloadคีย์เพื่อลบรายการและ จำกัด การอนุญาตให้ใช้กุญแจหรือไม่ ฉันไปที่การอนุญาตPreload, ขั้นสูง, การปิดใช้งานการสืบทอด, แปลงสิทธิ์ที่สืบทอดทั้งหมด, ลบทั้งหมด, เพิ่มสิทธิ์การอ่านอย่างเดียวEveryoneและบันทึก สิ่งนี้จะช่วยป้องกันไม่ให้ Windows เพิ่มรายการที่เพิ่มโปรไฟล์คีย์บอร์ดอีกครั้ง
bers

58

จริงๆแล้วการแก้ปัญหาค่อนข้างง่ายและไม่จำเป็นต้องแก้ไขรีจิสทรี!

  • ไปที่เพื่อภูมิภาคและภาษา (ชื่อก่อนหน้านี้การตั้งค่าภาษา)คลิกที่ภาษาอังกฤษ (สหรัฐอเมริกา)และไปที่ตัวเลือก

  • หากคุณเห็น "US Keyboard" ที่นั่นให้ลบออกแล้วเสร็จ

  • อย่างไรก็ตามหากคุณไม่เห็นที่นั่นให้คลิกที่เพิ่มแป้นพิมพ์เพิ่ม "US keyboard" จากนั้นนำแป้นพิมพ์นั้นออกและคุณทำเสร็จแล้ว

ฉันพบสิ่งนี้หลังจากการลองผิดลองถูกหลายอย่างฉันมีปัญหาเดียวกัน


18
มันจะปรากฏขึ้นหลังจากรีบูตอีกครั้ง
troorl

6
จุดที่สามคือแท้จริง: "คุณลองเปิดและปิดอีกครั้งหรือไม่" ... และนั่นคือจุด :) ขอบคุณสำหรับการที่!
ccjmne

3
ใช้งานไม่ได้หลังจากรีบูตเครื่องฉันทดสอบสิ่งนี้ก่อนที่จะแก้ปัญหาข้างต้น
Luis Ferrao

1
ใช่ไม่ทำงานหลังจากรีสตาร์ทหรือหลังการไฮเบอร์เนตพีซี
Ozan Kurt

2
หลังจากอัปเดตมิถุนายน 2018 Windows 10 การตั้งค่า "ลบ" สำหรับ English US จะถูกปิดใช้งาน (Grr.)
ms609

6

นี่ไม่ใช่การแก้ไขอย่างถาวร แต่เป็นไฟล์แบตช์ที่มีประโยชน์ซึ่งเพิ่มen-USรูปแบบแป้นพิมพ์แล้วลบออก (คุณต้องเพิ่มมันก่อนจึงจะสามารถลบออกได้)

Remove_en-US.xml:

<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend">

    <!--User List-->
    <gs:UserList>
        <gs:User UserID="Current"/>
    </gs:UserList>

    <!--input preferences--> 
    <gs:InputPreferences>
        <!--add en-US keyboard input-->
        <gs:InputLanguageID Action="add" ID="0409:00000409"/>
        <!--remove en-US keyboard input-->
        <gs:InputLanguageID Action="remove" ID="0409:00000409"/>
    </gs:InputPreferences>

</gs:GlobalizationServices>

Remove_en-US.bat:

control intl.cpl,, /f:"%CD%\Remove_en-US.xml"

จากนั้นคุณสามารถเรียกใช้Remove_en-US.batเพื่อลบเค้าโครงได้ ฉันมีทางลัดไปยังไฟล์ชุดนี้ในโปรแกรมเริ่มต้นของฉันเช่นกัน

นี่0409คือlocale IDและ00000409เป็นค่ารูปแบบแป้นพิมพ์ สำหรับรายชื่อของlocale ID:keyboard layout valueดูhttps://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-8.1-and-8/hh825682(v=win.10)


6

ฉันพบคำตอบหลังจากหนึ่งชั่วโมงเพื่อสร้าง:

OS Name:                   Microsoft Windows 10 Pro
OS Version:                10.0.18362 N/A Build 18362
  1. สิ่งนี้จะทำงานได้แม้หลังจากรีสตาร์ท
  2. มันง่ายที่จะทำ และตั้งค่าให้ดี
  3. มันจะหยุดการสร้างภาษาอื่น ๆ สำหรับผู้ใช้ใหม่
  4. มันจะไม่แสดงภาษาเหล่านี้ในหน้าจอเข้าสู่ระบบอีกต่อไป
  5. ไม่มีแฮ็กรีจิสทรีที่ไม่ได้ผลสำหรับฉันหลังจากรีสตาร์ท

นอกจากนี้คุณยังสามารถผ่าน ( แต่ให้แน่ใจว่าได้ตรวจสอบการตั้งค่าภาษาของคุณก่อน - ดูภาพหน้าจอด้านล่าง )

แผงควบคุมภาคAdministrativeแท็บ→Copy settings...


นี่คือขั้นตอนในภาพที่มีสัญกรณ์ในภาพสำหรับการอ้างอิงด้วย

ทำอย่างไร

จากนั้นรีจิสตรีของคุณควรมีลักษณะเช่นนั้นโดยโหลดล่วงหน้าเพียงครั้งเดียว

คัดลอกComputer\HKEY_USERS\.DEFAULT\Keyboard Layout\Preloadไปที่แถบที่อยู่ของตัวแก้ไขรีจิสทรีเพื่อข้ามไปยังส่วนตรวจสอบด้วยตนเอง

โหลดล่วงหน้าหนึ่งครั้ง


4

มีสองสถานที่สำหรับการกำหนดค่าแป้นพิมพ์ใน windows 10 แผงควบคุม -> ภาษา

ส่วนอีกอันอยู่ในการตั้งค่าเหมือนกับภาพหน้าจอของคุณ

ทำการเปลี่ยนแปลงที่นั่นเช่นกันควรแก้ไขปัญหา

ป้อนคำอธิบายรูปภาพที่นี่


น่าเสียดายที่นี่ไม่ได้เป็นเช่นนั้นฉันได้เพิ่มภาพหน้าจอของหน้าจอนั้นในคอมพิวเตอร์ของฉันมันได้รับการกำหนดค่าอย่างถูกต้องด้วย "Swiss French" เหมือนกับใน UI ใหม่
Luis Ferrao

4

ฉันไม่มีรายการ 409 ในรีจิสทรี (ดู anwer ที่ยอมรับ) ขั้นตอนที่ฉันทำเพื่อลบ English (US) จากเมนูตัวเลือกด่วน:

  1. เปิด "การตั้งค่าภาษา" จากเมนูการเลือกอย่างรวดเร็ว
  2. เพิ่มภาษาอังกฤษ (สหรัฐอเมริกา)
  3. ลบภาษาอังกฤษ (สหรัฐอเมริกา)

เคล็ดลับ: ในแผงควบคุม \ รายการแผงควบคุมทั้งหมด \ การตั้งค่าภาษา \ ขั้นสูง -> เปลี่ยนปุ่มลัดแถบภาษาคุณสามารถตั้งค่าการกระทำของปุ่มลัดสำหรับ "ระหว่างภาษาที่ป้อน" เป็น "(ไม่มี)" เพื่อหลีกเลี่ยงการสลับรูปแบบแป้นพิมพ์โดยไม่ตั้งใจ


2
ฉันคิดว่าคำตอบของคุณไม่ตรงกับคำถามนี้ ปัญหาไม่ได้ลบภาษาอังกฤษแบบสหรัฐอเมริกาซึ่งฉันพิมพ์และต้องการในรายการภาษาของฉันอย่างแน่นอนประเด็นก็คือการลบเค้าโครง "US Keyboard" ที่ไม่มีอยู่จริงที่ไม่ตรงกับรูปแบบแป้นพิมพ์ของฉันเอง นาน ๆ ครั้งเป็น "ภาษา" เพิ่มเติมในรายการภาษา มีหัวข้อมากมายเกี่ยวกับการลบภาษาอังกฤษของสหรัฐอเมริกาเอง แต่นี่ไม่ใช่หนึ่งในนั้น ฉันไม่ได้ตั้งใจจะลบรายการภาษาฉันใช้มันเพื่อสลับระหว่างภาษาอย่างรวดเร็วตลอดเวลา (สำหรับตัวตรวจการสะกดของ windows)
Luis Ferrao

2
  1. แผงควบคุม
  2. นาฬิกาภาษาและภูมิภาค
  3. ภาษา
  4. เปลี่ยนวิธีการป้อนข้อมูล
  5. ตั้งค่าขั้นสูง
  6. แทนที่สำหรับวิธีการป้อนข้อมูลเริ่มต้น
  7. เลือกเค้าโครงที่คุณต้องการ (แทน "ใช้รายการภาษา")
  8. บันทึก

สกรีนช็อตของการตั้งค่าอินพุต -> การตั้งค่าขั้นสูง


'ภาษา' หายไปในการอัพเดทล่าสุดของ win10
ลาตินัม

2

คำตอบของ Mikel ด้านบนจะแก้ไขสิ่งนี้ .... แต่ในกรณีที่สิ่งนี้ปรากฏขึ้นอีกครั้งสำหรับคุณ (เช่นเดียวกับฉัน): คุณอาจมีทางลัด AutoHotkey ที่กำหนดเองเพื่อเปลี่ยนรูปแบบแป้นพิมพ์หรือไม่?

ปัญหาคือสคริปต์ AutoHotkey ของฉันมีบรรทัดของรหัสต่อไปนี้:

; This should be replaced by whatever your native language is. See 
; http://msdn.microsoft.com/en-us/library/dd318693%28v=vs.85%29.aspx
; for the language identifiers list.
el := DllCall("LoadKeyboardLayout", "Str", "00000408", "Int", 1)
en := DllCall("LoadKeyboardLayout", "Str", "00000409", "Int", 1

ดังนั้นในขณะที่เดสก์ท็อปของฉันสิ่งนี้จะทำงานได้อย่างสวยงามและเปลี่ยนจากรูปแบบแป้นพิมพ์ภาษาอังกฤษ (รูปแบบแป้นพิมพ์ภาษาอังกฤษ) เป็นรูปแบบกรีก (รูปแบบแป้นพิมพ์ GR) และในทางกลับกันบนแล็ปท็อปของฉันที่มีแป้นพิมพ์สหรัฐฯ สีน้ำเงินบนตัวสลับภาษาของฉัน

ฉันหวังว่านี่จะช่วยได้!


1

Windows 10 ฉบับครบรอบมี "คุณสมบัติ" ใหม่ซึ่งถือว่าการตั้งค่าภูมิภาคและภาษามาพร้อมกับรูปแบบแป้นพิมพ์บังคับ เลย์เอาต์เหล่านั้นไม่สามารถลบได้ผ่านการตั้งค่า GUI

แต่ฉันสามารถเอาชนะมันผ่าน PowerShell ด้วยสคริปต์เช่นนี้:

$1=New-WinUserLanguageList en-US
$1.Add("nl-NL")
$1.Add("de-DE")
Set-WinUserLanguageList $1

คัดลอกวางลงในหน้าต่าง PowerShell

ตัวอย่างด้านบนกำหนดค่าเค้าโครงของสหรัฐอเมริกาเป็นค่าเริ่มต้นด้วยโครงร่าง NL และ BE เพิ่มเติม ปรับได้ตามต้องการ


ไม่มีอะไรเปลี่ยนแปลงสำหรับฉันหลังจากการดำเนินการคำสั่งนี้
Lu55

0

จริงๆแล้วมันดูเหมือนว่าปัญหาจะยังมีคีย์เดียวกันภายใต้โปรไฟล์ของผู้ใช้จริงของคุณ ( HKEY_USERS\S-1-5-21-...\Keyboard Layout\Preload) HKEY_USERS\.DEFAULT\Keyboard Layout\Preloadไม่ได้เป็นเพียง

ฉันสามารถทำซ้ำสิ่งนี้ได้อย่างต่อเนื่อง - เมื่อฉันเพิ่มรหัส 00000429 (เปอร์เซีย) เช่นที่นั่นและรีบูตฉันจะเพิ่มแป้นพิมพ์ภาษาเปอร์เซียโดยอัตโนมัติและเมื่อฉันลบและรีบูตเปอร์เซียจะไม่อยู่ที่นั่นอีกต่อไป

สรุปคุณอาจต้องการที่จะทำให้แน่ใจว่าคุณไม่ได้มีภาษาที่ไม่พึงประสงค์ในค่า มิได้HKEY_USERS\.DEFAULT\Keyboard Layout\PreloadHKEY_USERS\S-1-5-21-...\Keyboard Layout\Preload

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.