Como faço para desativar o Unicode em um projeto VC ++?

Eu tenho um projeto VC ++ no Visual Studio 2008.

Ele está definindo os símbolos para unicode na linha de comando do compilador ( /D "_UNICODE" /D "UNICODE" ), mesmo que eu não tenha esse símbolo ativado na seção do pré-processador para o projeto.

texto alternativo http://sofpt.miximages.com/visual-studio/14nz693.png

Como resultado, estou compilando contra as versões Unicode de todas as funções de biblioteca do Win32, em oposição às de ANSI. Por exemplo, no WinBase.h, existe:

 #ifdef UNICODE #define CreateFile CreateFileW #else #define CreateFile CreateFileA #endif // !UNICODE 

Onde o unicode está sendo ativado no projeto VC ++, como posso desativá-lo?

Você já tentou: Propriedades do Projeto – Geral – Padrões de Projeto – Conjunto de Caracteres?

Veja as respostas nesta pergunta para saber as diferenças entre as opções “Usar conjuntos de caracteres de byte múltiplo” e “Não definir”: Sobre a opção “Conjunto de caracteres” no visual studio 2010

Burgos tem a resposta certa. Só para esclarecer, o conjunto de caracteres deve ser alterado para “Não definido”.

properities de projeto -> properities de configuração -> geral -> conjunto charater

use #undef UNICODE no topo do seu arquivo principal.

Por alguma razão, notei que a configuração para unicode para “Todas as configurações” não se aplicava a todas as configurações.

Cenário: Configurando o Configuragion no IDE

Para confirmar isso, eu abriria o .vcxproj e confirmaria que o token correto está em todos os 4 locais. Nesta foto, estou usando unicode. Então a string que estou procurando é “Unicode”. Para você, você provavelmente quer dizer “MultiByte”.

Cenário: Confirmando mudanças no arquivo de configuração

você pode ir para propriedades do projeto -> propriedades de configuração -> Geral -> Projeto padrão e lá mudar o “Conjunto de caracteres” de “Unicode” para “Não definido”.

Nenhuma das soluções acima funcionou para mim. Mas

 #include  

funcionou bem.