Artigo: 125750 - Última revisão: terça-feira, 31 de Maio de 2005 - Revisão: 4.1

Recebe uma mensagem de erro "não resolvido símbolo externo _WinMain@16" quando tenta criar uma aplicação MFC com suporte de Unicode no Visual C++

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Nota : Microsoft Visual C++ NET (2002) suportados ambos os o modelo de código gerido que é fornecido pelo .NET Framework e do Windows nativo não gerido modelo de código. As informações contidas neste artigo aplicam-se para o Visual C++ não gerido apenas de código.
Expandir tudo | Reduzir tudo

Sintomas

O linker gera o erro seguinte quando criar uma aplicação de MFC com suporte UNICODE utilizando produtos da Microsoft listados no início deste artigo:
Msvcrt.lib(crtexew.obj): erro LNK2001: externo não resolvido
Símbolo "_WinMain@16"
Visual C++. NET:
Erro LNK2019: não resolvidos símbolo externos _WinMain@16 referenciado na função _WinMainCRTStartup
erro fatal LNK1120: 1 não resolvidos externos

Causa

MFC UNICODE aplicações que utilizam wWinMainCRTStartup o ponto de entrada.

Resolução

Na categoria de saída do separador ligação no Project caixa de diálogo Definições, definido o símbolo de ponto de entrada para wWinMainCRTStartup.

Para o Visual C++. NET: A categoria avançada da pasta Ligador de na caixa de diálogo Propriedades do projecto, configurar o ponto de entrada para wWinMainCRTStartup.

Ponto Da Situação

Este comportamento ocorre por predefinição.

Referências

As informações acima documentadas no Books Online nesta estrutura:
 - C/C++
    - Programming Techniques
       - Chapter 12 Developing for International Markets
          - Support for Unicode
             - Unicode Programming: Summary
				
esta referência também lista os passos adicionais que deve considerar para tirar partido do suporte de tempo de execução MFC e C para Unicode.

A informação contida neste artigo aplica-se a:
  • The C Run-Time (CRT) nas seguintes plataformas
    • Microsoft Visual C++ 2.0 Professional Edition
    • Microsoft Visual C++ 2.1
    • Microsoft Visual C++ 4.0 Standard Edition
    • Microsoft Visual C++ 5.0 Enterprise Edition
    • Microsoft Visual C++ 6.0 Enterprise Edition
    • Microsoft Visual C++ 5.0 Professional Edition
    • Microsoft Visual C++ 6.0 Professional Edition
    • Microsoft Visual C++, 32-bit Learning Edition 6.0
    • Microsoft Visual C++ .NET 2002 Standard Edition
    • Microsoft Visual C++ .NET 2003 Standard Edition
Palavras-chave: 
kbmt kbtshoot kberrmsg kbprb KB125750 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 125750  (http://support.microsoft.com/kb/125750/en-us/ )