hacks español commands windows-xp language-features cmd

windows xp - español - ¿Cómo puedo encontrar el idioma de Windows actual de cmd?



windows cmd commands (5)

Me gustaría ejecutar un script para cada idioma. Necesito una forma de encontrar qué idioma se está utilizando, utilizando archivos por lotes. Tanto en Windows XP como en Windows 7.

Gracias


No sé si esto todavía funciona en Windows 7, pero lo hace en Windows XP

reg query "hklm/system/controlset001/control/nls/language" /v Installlanguage

Entonces puedes analizar la salida. p.ej

0409 --> English 0407 --> German


El siguiente código solucionó mi problema. Funciona en Windows Server 2003 y Windows 7

FOR /F "tokens=3 delims= " %%G in (''reg query "hklm/system/controlset001/control/nls/language" /v Installlanguage'') DO ( IF [%%G] EQU [0409] ( ECHO English install language detected ) ELSE ( ECHO Some other language detected )

¡Espero eso ayude!


En el comando de escritura CMD de la consola:

intl.cpl


Use el comando "dism / online / get-intl".


No puede usar InstallLanguage en HKLM / SYSTEM / CurrentControlSet / Control / nls / language
porque eso es lo que dice que es: Instalar lenguaje
Aunque puede instalar directamente la versión localizada de Windows, esto no siempre se hace, ya que no estaba en mi PC. En su lugar, se aplica un paquete de idioma, lo que está bien, pero el idioma de visualización no es lo mismo que instalar el idioma.
Además, si un usuario cambia su idioma de visualización, InstallLanguage no reflejará el cambio. Y podría haber más usuarios con diferentes idiomas de visualización.

  • Idioma actual de la pantalla del usuario

HKCU / Panel de control / Escritorio
PreferredUILanguages

FOR /F "tokens=3" %%a IN (''reg query "HKCU/Control Panel/Desktop" /v PreferredUILanguages ^| find "PreferredUILanguages"'') DO set UILanguage=%%a echo User Display Language: %UILanguage% Existe una diferencia entre el idioma de la máquina local, el idioma del sistema y el idioma del usuario. También hay configuraciones separadas para el lenguaje BCD, usadas para recuperación y administrador de arranque

  • Máquina local

El idioma de instalación se establece en la instalación y nunca se cambia
también se establece un valor predeterminado para la clave "HKLM / SYSTEM / CurrentControlSet / Control / nls / language" en el mismo valor. Algunos programas de instalación de InstallShield leen erróneamente este valor, lo que da como resultado una interfaz en inglés en Windows localizado.
Si cambia el idioma de la pantalla, se almacena un nuevo valor en

HKLM / SYSTEM / CurrentControlSet / Control / MUI / Settings
PreferredUiLanguages

esto anulará el valor de InstallLanguage en HKLM / SYSTEM / CurrentControlSet / Control / nls / language
Hay una confusión en los tipos de valor, mientras que InstallLanguage es LCID, PreferredUiLanguages ​​es una cadena LCID. Este idioma se informa como Lenguaje local de máquina. No es el idioma de visualización del usuario

  • Lenguaje del sistema

Este es el lenguaje para el usuario del sistema.
Antes de que un usuario inicie sesión, se utiliza este idioma.
Eso significa que es un idioma para la pantalla de bienvenida y para el OOBE.

HKEY_USERS / S-1-5-18 / Panel de control / Escritorio / MuiCached
MachinePreferredUILanguages

También hay una forma de WMI para obtener el lenguaje del sistema operativo, pero no probé cuál de estos idiomas obtendrás

wmic os get locale, oslanguage, codeset

FOR /F "tokens=2 delims==" %%a IN (''wmic os get OSLanguage /Value'') DO set OSLanguage=%%a echo OS Language: %OSLanguage%