Compartilhar via


Inicializando DLLs regulares

Como as dlls normais têm um objeto de CWinApp , devem executar suas tarefas de inicialização e de término no mesmo local que um aplicativo MFC: em InitInstance e funções de membro de CWinAppda DLL - classe derivada de ExitInstance . Como o MFC fornece uma função de DllMain que é chamada por _DllMainCRTStartup para PROCESS_ATTACH e PROCESS_DETACH, você não deve escrever sua própria função de DllMain . MFC- forneceu chamadas de função InitInstance de DllMain quando o DLL é carregado e chama ExitInstance antes que o DLL seja descarregado.

Uma DLL normal pode controlar vários threads chamando TlsAlloc e TlsGetValue em seu InitInstance funções. Estas funções permitem que o DLL acompanhe dados de threads específicos.

O suporte nos seus soquetes normais da DLL que vincula dinamicamente ao MFC, se você estiver usando qualquer MFC OLE, base de dados de MFC (ou DAO), ou MFC, respectivamente, as dlls MFCOxxD.dll de extensão de depuração MFC, MFCDxxD.dll, e MFCNxxD.dll (onde xx é o número da versão) são vinculados em automaticamente. Você deve chamar uma das seguintes funções predefinidas de inicialização de cada um desses DLL que você está usando em CWinApp::InitInstancenormal do DLL.

Tipo de suporte de MFC

Chame a função de inicialização

MFC OLE (MFCOxxD.dll)

AfxOleInitModule

Base de dados de MFCDxxD.dll) (MFC

AfxDbInitModule

Soquetes (MFC MFCNxxD.dll)

AfxNetInitModule

O que você deseja fazer?

Que você deseja saber mais?

Consulte também

Conceitos

Inicializando uma DLL