C4747 de aviso (nível 1) do compilador
Chamar gerenciado 'entrypoint': código gerenciado não pode ser executado sob o bloqueio do carregador, incluindo o ponto de entrada DLL e chamadas alcançadas a partir do ponto de entrada DLL
O compilador encontrado um ponto de entrada (provável) DLL compilado para MSIL.Devido aos possíveis problemas com a carregar uma DLL que foi compilado para MSIL cujo ponto de entrada, você é realmente desencorajada compilação de uma função de ponto de entrada DLL para MSIL.
Para obter mais informações, consulte Inicialização de Assemblies mistos e LNK1306 de erro de ferramentas do vinculador.
Para corrigir este erro
Não compilar o módulo com /clr.
Marcar a função de ponto de entrada com #pragma unmanaged.
Exemplo
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;
};