Por que minhas configurações de formato de data e hora do Windows afetam o idioma padrão dos aplicativos?

3

Esse comportamento está me incomodando há muito tempo. Moro na Alemanha, mas prefiro que meu sistema operacional e todos os aplicativos instalados sejam em inglês.
Então, sempre que eu instalo um sistema Windows meu, eu instalo a versão em inglês dele. Em seguida, altero a localização (Painel de Controle - > Relógio, Idioma e Região - > Alterar local) para "Estados Unidos".

No entanto, como 90% do tempo, quando eu instalo um aplicativo adicional (como o VirtualBox, por exemplo), ele escolhe o alemão como o idioma padrão. Esse comportamento pode ser percebido em todo lugar.

A única maneira de alterar isso é alterar o formato de data e hora. Assim que eu mudar isso para "Inglês (Estados Unidos)", todos os programas afetados usarão o idioma inglês. Eu posso até mesmo ajustar o perfil de volta para o que eu quiser (que é o que eu faço) e finalmente obtenho o resultado desejado.

Por que isso acontece? 90% de todos os programadores não conseguem usar a API correta para determinar o idioma desejado pelos usuários? É desta maneira que o idioma padrão deve ser determinado no Windows? Estou apenas configurando meu sistema incorretamente?

    
por Der Hochstapler 01.03.2011 / 15:00

1 resposta

2

Am I just setting up my system incorrectly?

De certa forma, sim. Você certamente não está lendo a guia que está vendo.

This is is a quick, dirty, incredibly lazy way to guess language settings that's probably right 99% of the time.

Errado. Os programas do instalador estão usando a API de suporte a idiomas nacionais do Windows para obter a localidade e o idioma do sistema que você configurou, para determinar em qual idioma o solicitar. As informações de localidade são definidas com a guia "Formatos" nessa parte do Painel de Controle.

Você está usando a guia "Local". Locais são diferentes para localidades e idiomas, não menos porque a API .NET para eles realmente não funciona no Windows anterior ao Windows NT versão 6.1. A API de locais é totalmente diferente, que nem sequer existe no Windows XP antes do Service Pack 3. Os criadores de programa de instalação que desejam ter um instalador que funcione no Windows NT anterior à versão 6.1 usarão a API local, porque é o que existe e o que funciona. / p>

Também é o que é certo .

Há uma diferença entre uma ID geográfica e um o idioma da interface do usuário , e você está fazendo isso exatamente ao contrário. O local ou ID geográfico de um computador é onde ele é fisicamente , e é isso que você precisa definir na guia "Local" no Controle Painel. O idioma da interface do usuário é o idioma em que você deseja ver as coisas exibidas para você, e isso é definido em uma combinação de lugares em outro lugar; incluindo as configurações de localidade definidas pela guia "Formatos" no Painel de Controle.

Ele diz, no topo da guia "Local", para que serve. Por que você acha que configurar seu computador para obter as "informações locais como notícias e previsão do tempo" para os Estados Unidos, porque você informou ao sistema que está fisicamente localizado nos Estados Unidos, é a coisa certa a fazer quando estão fisicamente localizados na Alemanha? Localize a sua máquina onde ela está fisicamente e defina o idioma e a localidade para o idioma e a moeda / número / data que deseja ver na interface do usuário.

Resumindo: quase 100% dos programas de diferentes fornecedores não estão funcionando como você pensa. É o seu pensamento errado, não os programas.

    
por 01.03.2011 / 18:27