Sdílet prostřednictvím


AfxInitExtensionModule

Volání této funkce v příponu DLL na DllMain inicializace knihovny DLL.

BOOL AFXAPI AfxInitExtensionModule(
   AFX_EXTENSION_MODULE& state,
   HMODULE hModule 
);

Parametry

  • state
    Odkaz na Struktura AFX_EXTENSION_MODULE strukturu, která bude obsahovat stav modulu DLL rozšíření po inicializaci.Stav obsahuje kopii runtime třídy objektů, které byly inicializovány příponu DLL jako součást běžné statický objekt konstrukce provedeny před DllMain je zadána.

  • hModule
    Popisovač modulu DLL rozšíření.

Vrácená hodnota

TRUE -li příponu DLL úspěšně inicializován. jinak FALSE.

Poznámky

Příklad:

static AFX_EXTENSION_MODULE NVC_MFC_DLLDLL = { NULL, NULL };
extern "C" int APIENTRY
DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved)
{
    // Remove this if you use lpReserved
    UNREFERENCED_PARAMETER(lpReserved);

    if (dwReason == DLL_PROCESS_ATTACH)
    {
        TRACE0("NVC_MFC_DLL.DLL Initializing!\n");
        
        // Extension DLL one-time initialization
        if (!AfxInitExtensionModule(NVC_MFC_DLLDLL, hInstance))
            return 0;

AfxInitExtensionModuleVytvoří kopii na knihovnu DLL HMODULE a zachycuje na knihovnu DLL modulu runtime třídy (CRuntimeClass struktury) stejně jako jeho továrny objektu (COleObjectFactory objekty) pro použití při vyšší CDynLinkLibrary je vytvořen objekt.

MFC příponu DLL nutné provést dvě věci v jejich DllMain funkce:

  • Volání AfxInitExtensionModule a zkontrolujte návratovou hodnotu.

  • Vytvoření CDynLinkLibrary objektu, pokud budete exportovat DLL Struktura CRuntimeClass objektů nebo má vlastní prostředky.

Můžete volat AfxTermExtensionModule vyčistit rozšiřující knihovny DLL při odpojí každého procesu z rozšiřující knihovny DLL (který se stane při ukončení procesu nebo knihovny DLL je vyloženo v důsledku AfxFreeLibrary volání).

Požadavky

Záhlaví: afxdll_.h

Viz také

Referenční dokumentace

AfxTermExtensionModule

Koncepty

MFC makra a Globals