@rem ****************************************************************************************************************************************** @rem ManageEngine OS Deployment Script to change the Keyboard Layout and Language settings of the User @rem ****************************************************************************************************************************************** @rem LanguageTag determines the Tag determined for each language @rem For Example @rem United States : en-US @rem Great Britain : en-GB set LanguageTag=%1 @rem Default value is set to United States if not "%1"=="" goto SkipDefaultLanguageTag set LanguageTag=en-US :SkipDefaultLanguageTag @rem LanguageID determines the ID determined for each language @rem For Example @rem United States : 0409:00000409 @rem Great Britain : 0809:00000809 set LanguageID=%2 @rem Default value is set to United States if not "%2"=="" goto SkipDefaultLanguageID set LanguageID=0409:00000409 :SkipDefaultLanguageID @rem GeoLocationID determines the Geographical Location ID for a particular language @rem For Example @rem United States : 244 @rem Great Britain : 242 set GeoLocationID=%3 @rem Default value is set to United States if not "%3"=="" goto SkipDefaultGeoLocationID set GeoLocationID=244 :SkipDefaultGeoLocationID @rem LanguageTag and LanguageID can be found from the below link @rem "https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/default-input-locales-for-windows-language-packs" @rem GeoLocationID can be found from the below link @rem "https://docs.microsoft.com/en-us/windows/desktop/intl/table-of-geographical-locations" @rem Changes the Culture of the user @rem Culture setting includes the names for the culture, the writing system, the calendar, and formatting for dates and sort strings PowerShell.exe Set-Culture -CultureInfo %LanguageTag% @rem Changes the Windows System Locale of the user @rem System-locale setting determines which code pages, which include ANSI, DOS, and Macintosh, the computer uses by default. PowerShell.exe Set-WinSystemLocale -SystemLocale %LanguageTag% @rem Changes the Home location setting of the user @rem WinHomeLocation is a user setting that describes the home location of the current user account. A home location is the country or region. if "%3"=="" goto Skip-SetWinHomeLocation PowerShell.exe Set-WinHomeLocation -GeoId %GeoLocationID% :Skip-SetWinHomeLocation @rem Changes the Windows Language setting of the particular User @rem WinUserLanguageList settings include input method, spelling setting, text prediction setting, and handwriting input mode. PowerShell.exe Set-WinUserLanguageList -LanguageList %LanguageTag% -force @rem WinUILanguageOverride will let you to have a user-preferred display language to be used for the Windows user interface (UI) @rem If no override setting is used, the display language is dynamically determined from the language list of the user PowerShell.exe Set-WinUILanguageOverride -Language %LanguageTag% @rem Copy the settings applied to Windows screen all the system accounts and the new user accounts to be created later. >"%cd%\Language.xml" ( ECHO(^ ECHO( ECHO( ^