Partilhar via


Aviso do compilador (nível 1) C4747

Chamando o 'ponto de entrada' gerenciado: o código gerenciado não pode ser executado sob bloqueio do carregador, incluindo o ponto de entrada da DLL e as chamadas alcançadas a partir do ponto de entrada da DLL

Observações

O compilador encontrou um ponto de entrada DLL (provável) compilado para MSIL. Devido a possíveis problemas com o carregamento de uma DLL cujo ponto de entrada foi compilado para MSIL, você é fortemente desencorajado de compilar uma função de ponto de entrada DLL para MSIL.

Para obter mais informações, consulte Initialization of Mixed Assemblies and Linker Tools Error LNK1306.

Para corrigir este erro

  1. Não compile o módulo com /clr.

  2. Marque a função de ponto de entrada com #pragma unmanaged.

Example

O exemplo a seguir gera C4747.

// C4747.cpp
// compile with: /clr /c /W1
// C4747 expected
#include <windows.h>

// Uncomment the following line to resolve.
// #pragma unmanaged

BOOL WINAPI DllMain(HANDLE hInstance, ULONG Command, LPVOID Reserved) {
   return TRUE;
}