Sdílet prostřednictvím


C4747 (úroveň 1) upozornění kompilátoru

Volání spravované "entrypoint": spravovaný kód nelze spouštět pod zámek zavaděče včetně vstupní bod knihovny DLL a volání bylo dosaženo od vstupní bod knihovny DLL

Nalezl kompilátor sestavených MSIL (pravděpodobné) DLL vstupní bod.Z důvodu potenciální problémy s načítání knihovny DLL, jehož vstupní bod byl zkompilován do MSIL se důrazně nedoporučuje z kompilace funkci vstupního bodu knihovny DLL do MSIL.

Další informace naleznete v tématu Inicializace smíšených sestavení a LNK1306 Chyba nástroje Linker.

Chcete-li opravit tuto chybu

  1. Kompilovat modul s /clr.

  2. Označit funkci vstupního bodu s #pragma unmanaged.

Příklad

Následující ukázka generuje 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;
};