Compartilhar via


Aviso das ferramentas de vinculador LNK4247

o ponto de entrada 'decorated_function_name' já tem um atributo de thread; 'attribute' ignorado

Um ponto de entrada, especificado com /ENTRY (Símbolo de Ponto de Entrada), tinha um atributo de threading, mas /CLRTHREADATTRIBUTE (Definir Atributo de Thread CLR) também foi especificado, mas com um modelo de threading diferente.

O vinculador ignorou o valor especificado com /CLRTHREADATTRIBUTE.

Para resolver esse aviso:

  • Remova /CLRTHREADATTRIBUTE do build.

  • Remova o atributo do seu arquivo de código-fonte.

  • Remova o atributo da fonte e /CLRTHREADATTRIBUTE do seu build, e aceite o modelo de threading CLR padrão.

  • Altere o valor passado para /CLRTHREADATTRIBUTE de modo que ele concorde com o atributo na fonte.

  • Altere o atributo na fonte de modo que ele concorde com o valor passado para /CLRTHREADATTRIBUTE.

A amostra a seguir gera LNK4247

// LNK4247.cpp
// compile with: /clr /c
// post-build command: link /CLRTHREADATTRIBUTE:STA LNK4247.obj /entry:functionTitle /SUBSYSTEM:Console
[System::MTAThreadAttribute]
void functionTitle (){}