Come modificare il layout della tastiera tramite la riga di comando cmd.exe su Windows XP / 7?


Risposte:


11

sì.

http://blogs.msdn.com/b/shawnste/archive/2007/04/12/configuring-international-settings-from-the-command-line.aspx

http://msdn.microsoft.com/en-us/goglobal/bb964650#eyb

esempio da riga di comando:

control intl.cpl,, /f:"%CD%\AddKeyboardLanguage.xml"

Esempio di AddKeyboardLanguage.xml:

<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend"> 
<gs:UserList>
<gs:User UserID="Current" CopySettingsToDefaultUserAcct="true" CopySettingsToSystemAcct="true"/></gs:UserList> 
<gs:InputPreferences> 

<!--ch-Google--><gs:InputLanguageID Action="add" ID="0804:E0200804"/>

</gs:InputPreferences>
</gs:GlobalizationServices>

Esempio di RemoveKeyboardLanguage.xml:

<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend"> 
<gs:UserList>
<gs:User UserID="Current" CopySettingsToDefaultUserAcct="true" CopySettingsToSystemAcct="true"/></gs:UserList> 
<gs:InputPreferences> 

<!--ch-Google--><gs:InputLanguageID Action="remove" ID="0804:E0200804"/>

</gs:InputPreferences>
</gs:GlobalizationServices>

2
Mi chiedo se esiste un comando dal cmd solo per dire quale layout di tastiera stai attualmente utilizzando in Windows7? Intendo un comando che restituisce un valore di stringa del layout della lingua che stai utilizzando, non cambiando il layout solo indagando.
dottorato il

2

Windows 8 offre un nuovo modulo internazionale PowerShell. Sfortunatamente non sembra che questo possa essere eseguito il backport o abbia un'alternativa a Windows 7


Configurare le impostazioni internazionali utilizzando i cmdlet di PowerShell

In Windows 8 è possibile utilizzare i cmdlet di Impostazioni internazionali PowerShell per modificare la lingua in un'installazione di Windows in esecuzione. Il vantaggio dell'utilizzo dei cmdlet di PowerShell è che è possibile incorporarli in uno script per facilitare la distribuzione e la configurazione di Windows. Fonte: http://technet.microsoft.com/en-us/library/hh825705.aspx

  1. Apri un prompt di Windows PowerShell.
  2. Importa il modulo delle impostazioni internazionali eseguendo il comando seguente:

    ipmo internazionale

  3. Visualizza le informazioni sulla locale sul computer eseguendo il comando seguente:

    Get-WinSystemLocale

  4. Imposta le impostazioni internazionali per la regione e la lingua che desideri. Ad esempio, il comando seguente imposta le impostazioni internazionali di sistema su giapponese (Giappone):

    Set-WinSystemLocale ja-JP


1
Questa risposta modifica le impostazioni internazionali . Non sembra influenzare le tastiere, al massimo la tabella codici sarà diversa.
jiggunjer,

2
Set-WinUserLanguageList -Force 'ja-JP'cambierà la lingua di input della tastiera. Si noti che l'uso di -Forceè solo per non visualizzare la finestra di dialogo popup. Get-WinUserLanguageListti darà l'elenco delle lingue disponibili all'utente per la digitazione.
Yasouser,

2

"Windows 8 offre un nuovo modulo internazionale PowerShell. Sfortunatamente non sembra che questo possa essere backportato o che abbia un'alternativa a Windows 7"

Puoi provare questo (esempio) .. questo abilita solo i layout di tastiera selezionati e cancella gli altri

Install-Module -name timezone -force
#Sets the systems timezone on "Western Europe Standard time" 
$langlist = New-WinUserLanguageList en-US

#Clears the other input methods from the displayed language
$langlist[0].InputMethodTips.Clear()

#Sets and adds the swiss-German keyboard
$langlist[0].InputMethodTips.add('0409:00000807')

#Sets and adds the swiss-french keyboard
$langlist[0].InputMethodTips.add('0409:0000100C')

#Apply the changes made on the system (and force to avoid the prompt  message)
Set-WinUserLanguageList $langlist -Force

1

No (non tramite CMD), dovrai cambiarlo nel modo seguente. C'era un keyb.comcomando in DOS ma che non esiste più in Windows.

Fonte:

Windows 7 o Windows Vista

  1. Fare clic sul pulsante Start, digitare intl.cpl nella casella Inizia ricerca, quindi premere INVIO.
  2. Nella scheda Tastiere e lingua, fai clic su Cambia tastiere. Clicca Aggiungi.
  3. Espandi la lingua che desideri. Ad esempio, espandere il francese (Canada).
  4. Espandere l'elenco Tastiera, fare clic per selezionare la casella di controllo francese canadese e quindi fare clic su OK.
  5. Nelle opzioni, fai clic su Visualizza layout per confrontare il layout con la tastiera effettiva.
  6. Nell'elenco Lingua di input predefinita, fare clic su Francese (Canada) - Francese canadese e quindi fare clic su OK due volte.
  7. Nella finestra di dialogo Opzioni internazionali e della lingua, fare clic su OK.
  8. Fare clic sulla barra della lingua e quindi fare clic su FR francese (Canada).

Windows XP

  1. Fare clic su Start, digitare intl.cpl nella casella Esegui, quindi premere INVIO.
  2. Nella scheda Lingue, fare clic su Dettagli.
  3. In Servizi installati, fai clic su Aggiungi.
  4. Nell'elenco Lingua di input, selezionare la lingua desiderata. Ad esempio, selezionare francese (Canada).
  5. Nell'elenco Layout tastiera / IME, fare clic su francese canadese e quindi fare clic su OK.
  6. Nell'elenco Selezionare una delle lingue di input installate da utilizzare all'avvio del computer, fare clic su Francese (Canada) - Francese canadese, quindi fare clic su OK.
  7. Nella finestra di dialogo Opzioni internazionali e della lingua, fare clic su OK.
  8. Fare clic sulla barra della lingua e quindi fare clic su francese (Canada).

Ma puoi usare Linuxloadkeys .


Saluti! +1 a te! :)
studiohack

0
$psdrive = New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS

Set-ItemProperty -Path "HKU:\.DEFAULT\Keyboard Layout\Preload\" -Name 1 -Value 00001033

$psdrive | Remove-PSDrive

Funziona bene in Windows 7 PowerShell ma devi disconnetterti e riconnetterti per abilitare se cambia il layout in inglese se vuoi un'altra lingua devi cambiare il numero -Value li puoi trovare qui: https: // www. science.co.il/language/Locale-codes.php


0

Per informazioni: Set-WinUserLanguageListcome suggerito in altre risposte, non cambia solo la lingua di input della tastiera attiva , ma sovrascrive l'elenco corrente di lingue di input (abilitate). Per impostare due o più lingue tra cui è possibile passare, utilizzare qualcosa in questo modo:

Set-WinUserLanguageList -Force en-US,sv-SE

La lingua fornita come primo argomento dell'elenco verrà selezionata come lingua attiva, quindi può essere un modo efficace per cambiare sia la lingua attiva sia l'elenco generale delle lingue della tastiera disponibili.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.