Atualmente, estou executando o Windows 7 x64 e geralmente quero que todas as ferramentas do console funcionem com UTF-8 em vez da página de código padrão 850.
A execução chcp 65001
no prompt de comando antes do uso de qualquer ferramenta ajuda, mas existe alguma maneira de definir a página de código padrão?
Atualizar:
Alterar o HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage\OEMCP
valor para 65001
aparecer para tornar o sistema incapaz de inicializar no meu caso.
Proposta de mudança do HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\Autorun
que @chcp 65001>nul
serviu apenas bem para o meu propósito. (graças a Ole_Brun )
A
versões das funções do Windows está quebrado. Todo o código precisa ser portado para usar as W
versões.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage\OEMCP
é usado como fallback para ambientes não unicode (não utf), obviamente você tenta forçá-lo a um 'unicode', pois vê que é controverso por definição. O Windows trava provavelmente porque algumas coisas do sistema na inicialização dependem do conjunto de caracteres não unicode para funcionar.