Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
A função de ponto de entrada da DLL não pode ser gerida; compilar para o nativo
Observações
DllMain não pode ser compilado para MSIL; deve ser compilado para código nativo.
Para resolver esse problema,
Compile o arquivo que contém o ponto de entrada sem /clr.
Coloque o ponto de entrada numa
#pragma unmanagedsecção.
Para obter mais informações, consulte:
Example
O exemplo a seguir gera LNK1306.
// LNK1306.cpp
// compile with: /clr /link /dll /entry:NewDllMain
// LNK1306 error expected
#include <windows.h>
int __stdcall NewDllMain( HINSTANCE h, ULONG ulReason, PVOID pvReserved ) {
return 1;
}
Para corrigir esse problema, não use a opção /clr para compilar esse arquivo ou use uma #pragma diretiva para colocar a definição de ponto de entrada em uma seção não gerenciada, como mostrado neste exemplo:
// LNK1306fix.cpp
// compile with: /clr /link /dll /entry:NewDllMain
#include <windows.h>
#pragma managed(push, off)
int __stdcall NewDllMain( HINSTANCE h, ULONG ulReason, PVOID pvReserved ) {
return 1;
}
#pragma managed(pop)