Ich habe eine vorkonfigurierte Windows 10-VM, die von einem Cloud-Computing-Dienst bereitgestellt wird.
Bei allen von diesem Dienst bereitgestellten Win10-Images ist Englisch (USA) als Standardsystemsprache eingestellt. Ich habe darauf keinen Einfluss.
Ich möchte ein Skript schreiben, das das Systemgebietsschema (einschließlich Anzeigesprache, Zeitzone, Kulturinformationen usw. usw.) in ein anderes Gebietsschema ändert, z. B. Deutsch (Deutschland).
Die Anforderungen sind
- dass die Umstellung vollautomatisch erfolgen muss, sodass keine manuelle Benutzerinteraktion erforderlich ist (d. h. kein manuelles Herunterladen oder Ändern von Dingen in einem Systemeinstellungsdialogfeld).
- dass die Änderungen dauerhaft sein müssen (d. h. einen Neustart der VM überstehen).
Wie mache ich das?
Antwort1
ich fandein Artikel darüber.
Bearbeiten: Es scheint, es gibt eine erklärende Seite:https://renenyffenegger.ch/notes/Windows/registry/tree/HKEY_CURRENT_USER/Control-Panel/International/index
Der ursprüngliche Autor kam auf folgende Lösung und änderte den ersten Teil für Ihr de-DE:
$DefaultHKEY = "HKU\DEFAULT_USER"
$DefaultRegPath = "C:\Users\Default\NTUSER.DAT"
Set-Culture de-DE
Set-WinSystemLocale de-DE
Set-WinHomeLocation -GeoId 94 # Germany (see https://docs.microsoft.com/de-ch/windows/win32/intl/table-of-geographical-locations)
Set-WinUserLanguageList de-DE
reg load $DefaultHKEY $DefaultRegPath
reg import ".\de-DE-default.reg"
reg unload $DefaultHKEY
reg import ".\de-DE-welcome.reg"
und die Registrierungsdateien:
Windows Registry Editor Version 5.00
[HKEY_USERS\DEFAULT_USER\Control Panel\International]
"Locale"="00000407" ; source: https://renenyffenegger.ch/notes/Windows/development/Internationalization/language#windows-language-id
"LocaleName"="de-DE"
;"s1159"="AM"
;"s2359"="PM"
"sCountry"="Germany"
"sCurrency"="€"
"sDate"="/"
"sDecimal"="."
"sGrouping"="3;0"
"sLanguage"="ENG"
"sList"=","
"sLongDate"="dd MMMM yyyy"
"sMonDecimalSep"="."
"sMonGrouping"="3;0"
"sMonThousandSep"=","
"sNativeDigits"="0123456789"
"sNegativeSign"="-"
"sPositiveSign"="+"
"sShortDate"="dd/MM/yyyy"
"sThousand"=","
"sTime"=":"
"sTimeFormat"="HH:mm:ss"
"sShortTime"="HH:mm"
"sYearMonth"="MMMM yyyy"
"iCalendarType"="1"
"iCountry"="44"
"iCurrDigits"="2"
"iCurrency"="0"
"iDate"="1"
"iDigits"="2"
"NumShape"="1"
"iFirstDayOfWeek"="0"
"iFirstWeekOfYear"="2"
"iLZero"="1"
"iMeasure"="0"
"iNegCurr"="1"
"iNegNumber"="1"
"iPaperSize"="9"
"iTime"="1"
"iTimePrefix"="0"
"iTLZero"="1"
[HKEY_USERS\DEFAULT_USER\Control Panel\International\Geo]
"Nation"="242"
[HKEY_USERS\DEFAULT_USER\Control Panel\International\User Profile]
"Languages"=hex(7):65,00,6e,00,2d,00,47,00,42,00,00,00
"ShowAutoCorrection"=dword:00000001
"ShowTextPrediction"=dword:00000001
"ShowCasing"=dword:00000001
"ShowShiftLock"=dword:00000001
[HKEY_USERS\DEFAULT_USER\Control Panel\International\User Profile\en-GB]
"CachedLanguageName"="@Winlangdb.dll,-1110"
"0809:00000809"=dword:00000001
[HKEY_USERS\DEFAULT_USER\Control Panel\International\User Profile System Backup]
"Languages"=hex(7):65,00,6e,00,2d,00,47,00,42,00,00,00
"ShowAutoCorrection"=dword:00000001
"ShowTextPrediction"=dword:00000001
"ShowCasing"=dword:00000001
"ShowShiftLock"=dword:00000001
[HKEY_USERS\DEFAULT_USER\Control Panel\International\User Profile System Backup\en-GB]
"CachedLanguageName"="@Winlangdb.dll,-1110"
"0809:00000809"=dword:00000001
[HKEY_USERS\DEFAULT_USER\Keyboard Layout]
[HKEY_USERS\DEFAULT_USER\Keyboard Layout\Preload]
"1"="00000809"
[HKEY_USERS\DEFAULT_USER\Keyboard Layout\Substitutes]
[HKEY_USERS\DEFAULT_USER\Keyboard Layout\Toggle]
[HKEY_USERS\DEFAULT_USER\Control Panel\Desktop\MuiCached]
"MachinePreferredUILanguages"=hex(7):65,00,6e,00,2d,00,47,00,42,00,00,00,00,00
[HKEY_USERS\DEFAULT_USER\Control Panel\Desktop]
"PreferredUILanguages"=hex(7):65,00,6e,00,2d,00,47,00,42,00,00,00
Windows Registry Editor Version 5.00
[HKEY_USERS\.DEFAULT\Control Panel\International]
"Locale"="00000809"
"LocaleName"="en-GB"
"s1159"="AM"
"s2359"="PM"
"sCountry"="United Kingdom"
"sCurrency"="£"
"sDate"="/"
"sDecimal"="."
"sGrouping"="3;0"
"sLanguage"="ENG"
"sList"=","
"sLongDate"="dd MMMM yyyy"
"sMonDecimalSep"="."
"sMonGrouping"="3;0"
"sMonThousandSep"=","
"sNativeDigits"="0123456789"
"sNegativeSign"="-"
"sPositiveSign"="+"
"sShortDate"="dd/MM/yyyy"
"sThousand"=","
"sTime"=":"
"sTimeFormat"="HH:mm:ss"
"sShortTime"="HH:mm"
"sYearMonth"="MMMM yyyy"
"iCalendarType"="1"
"iCountry"="44"
"iCurrDigits"="2"
"iCurrency"="0"
"iDate"="1"
"iDigits"="2"
"NumShape"="1"
"iFirstDayOfWeek"="0"
"iFirstWeekOfYear"="2"
"iLZero"="1"
"iMeasure"="0"
"iNegCurr"="1"
"iNegNumber"="1"
"iPaperSize"="9"
"iTime"="1"
"iTimePrefix"="0"
"iTLZero"="1"
[HKEY_USERS\.DEFAULT\Control Panel\International\Geo]
"Nation"="242"
[HKEY_USERS\.DEFAULT\Control Panel\International\User Profile]
"Languages"=hex(7):65,00,6e,00,2d,00,47,00,42,00,00,00
"ShowAutoCorrection"=dword:00000001
"ShowTextPrediction"=dword:00000001
"ShowCasing"=dword:00000001
"ShowShiftLock"=dword:00000001
[HKEY_USERS\.DEFAULT\Control Panel\International\User Profile\en-GB]
"CachedLanguageName"="@Winlangdb.dll,-1110"
"0809:00000809"=dword:00000001
[HKEY_USERS\.DEFAULT\Control Panel\International\User Profile System Backup]
"Languages"=hex(7):65,00,6e,00,2d,00,47,00,42,00,00,00
"ShowAutoCorrection"=dword:00000001
"ShowTextPrediction"=dword:00000001
"ShowCasing"=dword:00000001
"ShowShiftLock"=dword:00000001
[HKEY_USERS\.DEFAULT\Control Panel\International\User Profile System Backup\en-GB]
"CachedLanguageName"="@Winlangdb.dll,-1110"
"0809:00000809"=dword:00000001
[HKEY_USERS\.DEFAULT\Keyboard Layout]
[HKEY_USERS\.DEFAULT\Keyboard Layout\Preload]
"1"="00000809"
[HKEY_USERS\.DEFAULT\Keyboard Layout\Substitutes]
[HKEY_USERS\.DEFAULT\Keyboard Layout\Toggle]
[HKEY_USERS\.DEFAULT\Control Panel\Desktop\MuiCached]
"MachinePreferredUILanguages"=hex(7):65,00,6e,00,2d,00,47,00,42,00,00,00,00,00
[HKEY_USERS\.DEFAULT\Control Panel\Desktop]
"PreferredUILanguages"=hex(7):65,00,6e,00,2d,00,47,00,42,00,00,00