Esta configuración se almacena en HKEY_CURRENT_USER \ Control Panel \ Desktop \ UserPreferencesMask. El valor del registro en sí es un valor binario que representa una máscara de bits de varias configuraciones. Su formato está documentado aquí.
Lamentablemente, este documento está un poco desactualizado y no contiene información sobre esta configuración en particular. Al experimentar con este valor, descubrí que los settins se almacenan en el bit 32. Cuando este bit está activado, la entrada cambia para cada aplicación por separado.
Example of HKEY_CURRENT_USER\Control Panel\Desktop\UserPreferencesMask with setting on:
9e 1e 07 80 92 00 00 00
With setting off:
9e 1e 07 80 12 00 00 00
Aquí hay un ejemplo de script de Powershell para activarlo:
$prefMask = (Get-ItemProperty -Path 'HKCU:\Control Panel\Desktop' -Name 'UserPreferencesMask').UserPreferencesMask
if (($prefMask[4] -band 0x80) -eq 0) {
$prefMask[4] = ($prefMask[4] -bor 0x80)
New-ItemProperty -Path 'HKCU:\Control Panel\Desktop' -Name 'UserPreferencesMask' -Value $prefMask -PropertyType ([Microsoft.Win32.RegistryValueKind]::Binary) -Force | Out-Null
}
Se probó en muchas máquinas win8.1 (tanto x86 como x64) y parece funcionar como se esperaba.
Tenga en cuenta que la configuración surte efecto de inmediato, pero se muestra mal en el cuadro de diálogo de configuración del panel de idioma. Por lo tanto, debe cerrar sesión y volver a iniciar sesión en la configuración del panel para recoger el cambio.