Microsoft Intune: Cambiar el idioma de tu Windows y las sesiones de tus usuarios
En el artículo de como instalar Adobe [Microsoft Intune: Instalación de Adobe Acrobat], os había dejado algunos scripts de los que suelo reutilizar para realizar las instalaciones de aplicaciones. Pues hoy os voy a dejar otros scripts para poder cambiar el idioma de vuestros Windows, además de configurarlo en las sesiones de vuestros usuarios. Para ello, utilizaremos dos scripts que empaquetaremos en ficheros .intunewim para distribuir a nuestros equipos:
- Instalará el idioma que queramos
- Aplicará el idioma y demás parámetros del mismo a la sesión del usuario
Para esto, vamos a utilizar las dependencias en Intune (+ info Administración de aplicaciones Win32 en Microsoft Intune), que básicamente es que tengamos una aplicación previa instalada antes de instalar la actual. Además, podemos forzar a que esta otra aplicación se instale primero antes de poder continuar con la instalación de la aplicación en cuestión.
Antes de nada, os muestro la infografía para este artículo:
La idea es cambiar a Español (es-ES) el idioma de nuestro Windows y todas las opciones relacionadas para nuestros usuarios. Antes de nada, aquí os dejo un enlace de MSFT donde os muestra todos los idiomas disponibles en Windows con sus etiquetas de idioma (en-US, es-ES, etc…): Idiomas disponibles para Windows. Esto es algo que vais a necesitar para realizar la instalación del/los idiomas que queráis.
Como había comentado el principio, utilizaré dos paquetes .intunewim para hacer el despliegue, básicamente porque se tienen que ejecutar/instalar en contextos de seguridad diferentes. Para la instalación del idioma a nivel de dispositivo, pero para cambiar el idioma del usuario se tiene ejecutar en el contexto de usuario.
Como ya me he extendido en otros artículos de como crear los .intunewim y los scripts que utilizo, en este artículo solo voy a mostraros los scripts y explicarlos brevemente para que no sean artículos muy extensos y que siempre me acabo repitiendo. Pero para que no tengáis que buscar dichos artículos, aqui os los dejo:
Pues bien, ahora empezaremos por la instalación del idioma que queramos en nuestro Windows, utilizaré 4 scripts:
- Intune-Lang-Check-en-ES-Device.ps1: comprobar si existe el idioma que queremos instalar previamente instalado
- Intune-Lang-es-ES-Device.ps1: instalar el idioma que queremos
- Intune-Lang-en-ES-DR-Device.ps1: comprobar si se ha instalado correctamente
- Intune-Lang-Remove-Device.ps1: eliminar el idioma instalado (por si queremos en algún momento quitarlo)
Con todo estos scripts crearemos un .intunewim y los iremos configurando en las diferentes opciones en Intune (las capturas son para poner el idioma en inglés (en-US), pero los scripts son para ponerlo en español (es-ES):
Ahora nos quedaría asignar esta aplicación a los equipos a los que queremos cambiarles el idioma y listo, en cuestión de minutos y un reinicio los tendríamos cambiados al idioma elegido. Si utilizamos grupos dinámicos de equipos podemos buscar atributos estratégicos que permitan agrupar a los equipos por algún atributo.
- Intune-Lang-Check-en-ES-User.ps1: comprobar si el usuario ya tiene el idioma configurado
- Intune-Lang-es-ES-User.ps1: configurar el idioma en la sesión del usuario
- Intune-Lang-en-ES-DR-User.ps1: comprobar si se ha cambiado el idioma de la sesión del usuario al idioma configurado
- Intune-Lang-en-US-User.ps1: este script lo podemos utilizar como script de “desinstalación de la aplicación”, podemos poner un idioma al que volver el equipo si fuese necesario
- en-US-Device: instala el idioma que quieras en el equipo
- en-US-Delete: elimina el resto de idiomas que no sea el que has instalado, aplicación que creéis con este script tiene que tener como dependencia la aplicación que instale los idiomas (en-US-Device)
- en-US-User: estable el idioma instalado en la sesión del usuario, aplicación que creéis con este script tiene que tener como dependencia la aplicación que instale los idiomas (en-US-Device)
Iñigo / 31 marzo, 2023
Muy interesasnte Santiago,
Me interesaria probarlo, pero las descargas de los scripts estan con error, podrias habilitar nuevos links para descargar los scripts?
Gracias
Santiago Buitrago Reis / Autor / 31 marzo, 2023
Hola Iñigo:
Gracias por comentarlo, los he vuelto a subir pero actualizados y con algún comentario adicional que sino se entiende, por favor, deja un comentario. Los ficheros .zip tienen todos los scripts de PS que necesitas para crear cada .intunewim.
Un saludo
Nerea / 18 abril, 2023
Hola Santiago,
yo ejecuto tanto los comandos que tienes en el en-US-User.zip como el de la imagen para el fichero de instalacion del lenguage en el usuario y NO me ponen el pc en español.
# Comandos en el en-US-User.zip, Intune-Lang-en-ES-User.ps1:
Set-Culture es-ES
Set-WinSystemLocale -SystemLocale es-ES
Set-WinUILanguageOverride -Language es-ES
Set-WinUserLanguageList es-ES -Force
# Comandos en el tutorial de la pagina web para Intune-Lang-en-ES-User.ps1:
Set-WinUserLanguageList es-ES -Force
Set-WinSystemLocale es-ES
Set-Culture es-ES
¿Puedes ayudarme?
Gracias de antemano
Nerea
Santiago Buitrago Reis / Autor / 18 abril, 2023
Hola Nerea:
¿Has ido comprobando si tienes el idioma instalado el cual quieres poder a los usuarios?
Un saludo
Santiago Buitrago Reis / Autor / 18 abril, 2023
Hola:
Con esto debería funcionarte:
# Con derechos administrativos
Install-Language es-ES
Set-Culture es-ES
Set-WinSystemLocale -SystemLocale es-ES
Set-WinUILanguageOverride -Language es-ES
Set-WinUserLanguageList -LanguageList es-ES -Force
Set-SystemPreferredUILanguage -Language es-ES
# Perfil del usuario
Set-Culture es-ES
Set-WinSystemLocale -SystemLocale es-ES
Set-WinUILanguageOverride -Language es-ES
Sino es así dímelo y seguimos investigando, pero antes de nada pruébalos sin Intune para asegurarte de que no dan problemas y funciona bien.
Un saludo
PD: para que se cambie el idioma tienes que cerrar la sesión del usuario y volver a iniciarla
Nerea / 19 abril, 2023
Hola Santiago,
esos comandos si me han cambiado el idioma. Muchas Gracias.
Con intune tengo la siguiente duda:
– El script de Requeriments tiene que dar “Requires cambiar a es-ES” (En el if de ambos bucles no) en ambos no? tanto en el del device como en el del user?
Es que por algún motivo no ejecuta el script de instalación.
Gracias
Santiago Buitrago Reis / Autor / 19 abril, 2023
Hola Nerea:
El código que te he pasado es de un script un poco adaptado a una instalación, pero reviso los que tengo en el artículo que siempre los pruebo en MV para ver que funciona bien.
Y te comento lo que hago con los scripts por sino he sido claro en el artículo:
1. Primero instalo el idioma y lo establezco a nivel de Windows (script a nivel de equipo)
2. Elimino los idiomas que no quiero en el equipo (script a nivel de equipo)
3. Establezco el idioma para el usuario (script a nivel de usuario)
El script de chequeo con el Write-Ouput Requires cambiar a es-ES es porque quiero comprobar si ya lo tiene instalado, si es que si ya omite.
En cuanto al porqué no se ejecuta .. pues tendría que verlo, si quieres envíame capturas de pantalla a sbuitrago@asirsl.com y lo revisamos sin problema.
Un saludo
Nerea / 20 abril, 2023
Hola Santiago,
los script Intune-Lang-Check-en-ES-User.ps1 y Intune-Lang-en-ES-DR-User.ps1 son el mismo. Y los dos dicen que tengo el idioma instalado a nivel de usuario sin tenerlo instalado.
Gracias
Saludos