2016-07-09 11 views
0

meine Frage ist in diesem Teil der Windows-Systemsteuerung:Wie bewegen-up/bewegen nach unten ein Fenster Sprachen mit Powershell

Control panel

Ich möchte eine Befehlszeile oder Powershell-Code, um diese Sprachen zu bewegen, oder runter. Ich fand nur diesen Teil der Dokumentation https://technet.microsoft.com/en-us/library/hh852115.aspx, aber es war nicht sehr hilfreich, weil ich wenig Erfahrung mit Powershell habe. Ich habe es geschafft, die Liste der Sprachen zu bekommen, aber ich kann sie trotzdem nicht wechseln.

Powershell output

Jede Hilfe würde geschätzt. :)

Antwort

1

.NET Framework List(Of T) Class könnte helfen. Sie können Reverse() method für diesen einfachen Fall wie folgt verwenden:

$OldList = Get-WinUserLanguageList 
$OldList.Reverse() 
Set-WinUserLanguageList -LanguageList $OldList -Force 

Funktioniert auch in etwas komplexeren Szenario:

PS D:\PShell> Get-WinUserLanguageList | ` 
        Format-Table -Property Autonym, LocalizedName, InputMethodTips -AutoSize 

Autonym     LocalizedName   InputMethodTips    
-------     -------------   ---------------    
English (United Kingdom) English (United Kingdom) {0809:00000809, 0809:00000405} 
čeština     Czech     {0405:00000405, 0405:00020409} 
Ελληνικά     Greek     {0408:00000408}    
русский     Russian     {0419:00000419}    
Türkçe     Turkish     {041F:0000041F, 041F:00000426} 
eesti     Estonian     {0425:0000041B, 0425:0001041F} 
0

OK habe ich es geschafft, dies zu tun:

$list = Get-WinUserLanguageList; 

$tmp = $list[0]; 
$list[0] = $list[1]; 
$list[1] = $tmp 

Set-WinUserLanguageList $list -Force -Confirm:$false -ErrorAction SilentlyContinue 

Ich habe ein Skript aus diesem und es funktioniert gut.