Saltar al contenido
Inicio / Intune / Microsoft Intune: Cambiar el idioma de tu Windows y las sesiones de tus usuarios

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:

  1. Instalará el idioma que queramos
  2. 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.

Ahora que tenemos el idioma instalado, nos queda configurárselo a los usuarios. Esto podemos hacerlo vía Profiles, pero quiero mostraros como con scripts de PowerShell podemos hacerlo también. Aquí los scripts:
  • 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
Y aquí la configuración de Intune para este paquete de .intunewim:
Y aquí os muestro la configuración de las dependencias, añadimos la aplicación que queremos que se instale antes que esta que en nuestro caso es la que nos instalará el idioma que previamente hemos configurado:
Y configuramos que para que se instale la aplicación actual se instale automáticamente la que estamos eligiendo:
Esta aplicación se le asociamos a un grupo de usuarios, que aquí es muy interesante configurar grupos dinámicos de usuarios utilizando sus atributos en donde podemos predefinir el idioma (puede salir de las asignación de la licencia de Office 365) y así podemos automatizar la configuración del idioma de las sesiones de los usuarios. Podríamos configurar un script que dinámicamente obtenga el idioma del usuario y el script lo obtenga como variable y lo establezca como idioma del usuario.
Una vez aplicada esta configuración el usuario tiene que cerrar su sesión y volver a iniciarla, una vez lo haya hecho entonces habrá cambiado el idioma de su sesión.
Aquí os dejo los scripts que he incluso modificado para optimizarlos un poco, os comento los cambios:
  • 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)
Espero que os sea de utilidad, tanto la configuración como lo de las aplicaciones con dependencias porque facilitan mucho la vida!!!

8 comentarios en «Microsoft Intune: Cambiar el idioma de tu Windows y las sesiones de tus usuarios»

  1. Muy interesasnte Santiago,
    Me interesaria probarlo, pero las descargas de los scripts estan con error, podrias habilitar nuevos links para descargar los scripts?
    Gracias

    1. Santiago Buitrago Reis

      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

  2. 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

    1. Santiago Buitrago Reis

      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

  3. 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

    1. Santiago Buitrago Reis

      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

      1. 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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

¡Comparte!