void AFXAPI AfxTermExtensionModule ( AFX_EXTENSION_MODULEamp; »óÅÂ, BOOL °ø = FALSE );(&A)
¸Å°³ º¯¼ö
»óÅÂ
È®Àå DLL ¸ðµâÀÇ »óŸ¦ Æ÷ÇÔ ÇÏ´Â AFX_EXTENSION_MODULE ±¸Á¶¿¡ ´ë ÇÑ ÂüÁ¶¡£
°ønbsp;??¸¸¾à »ç½Ç, Á¤¸® ¸ðµç È®Àå DLL ¸ðµâ. ±×·¸Áö ¾ÊÀ¸¸é, Á¤¸® ÇöÀç DLL ¸ðµâ(&N)¡£
ÁÖÀÇ
MFC ¼ö ÀÖµµ·Ï Á¤¸® È®Àå DLL DLL (¾î¶² ÇÁ·Î¼¼½º°¡ Á¾·á ¶Ç´Â DLLÀÌ ·Îµå AfxFreeLibrary È£ÃâÀÇ °á°ú·Î ¹ß»ý)¿¡¼ °¢ ÇÁ·Î¼¼½º ºÐ¸® ¶§ÀÌ ÇÔ¼ö¸¦ È£Ãâ ÇÕ´Ï´Ù. AfxTermExtensionModule ¸ðµâ¿¡ ¿¬°á µÈ ¸ðµç ·ÎÄà ÀúÀå¼Ò¸¦ »èÁ¦ ÇÏ °í ¸Þ½ÃÁö ¸Ê ij½Ã¿¡¼ ¸ðµç Ç׸ñÀ» Á¦°Å ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:
Á¤Àû AFX_EXTENSION_MODULE extensionDLL;
extern "C" int APIENTRY DllMain (HINSTANCE hInstance, DWORD dwReason, LPVOID)
{
nbsp; °æ¿ì (dwReason DLL_PROCESS_ATTACH = =)
? {
???? / / È®Àå DLL ÃʱâÈ if (!AfxInitExtensionModule (extensionDLL, hInstance))
??????? 0; ¹Ýȯ
???? / / TODO: ¿©±â¿¡ ´Ù¸¥ ÃʱâÈ ÀÛ¾÷À» ¼öÇà
? }
? else if (dwReason DLL_PROCESS_DETACH = =)
? {
???? / / È®Àå DLL ´ç ÇÁ·Î¼¼½º Á¾·á
???? AfxTermExtensionModule(extensionDLL);
??? / / TODO: ¿©±â¿¡ ´Ù¸¥ Á¤¸® ÀÛ¾÷À» ¼öÇà
? }
? ¹Ýȯ 1;?? / / È®ÀÎ
}(&N)
ÀÀ¿ë ÇÁ·Î±×·¥ ·Îµå ÇÏ °í µ¿ÀûÀ¸·Î È®Àå Dll ÇØÁ¦ ÇÏ´Â °æ¿ì¿¡ AfxTermExtensionModuleÀ» È£Ãâ ÇØ¾ß ÇÕ´Ï´Ù. ÀÌÈÄ ´ëºÎºÐÀÇ È®Àå DllÀ» µ¿ÀûÀ¸·Î ·Îµå µÇÁö ¾Ê½À´Ï´Ù (ÀϹÝÀûÀ¸·Î, ±×µéÀº ±×µéÀÇ °¡Á®¿À±â ¶óÀ̺귯¸®¸¦ ÅëÇØ ¿¬°á µÈ), AfxTermExtensionModule À» È£Ãâ ÀϹÝÀûÀ¸·Î ÇÊ¿ä ÇÏÁö ¾Ê½À´Ï´Ù¡£
MFC È®Àå DllÀÇ DllMain¿¡¼ AfxInitExtensionModule À» È£Ãâ ÇØ¾ß ÇÕ´Ï´Ù. °æ¿ì DLL CRuntimeClass °³Ã¼¸¦ ³»º¸³»´Â °Í À̳ª ÀÚü »ç¿ëÀÚ ÁöÁ¤ ¸®¼Ò½º, ´ç½ÅÀº ¶ÇÇÑ DllMain ¿¡¼ CDynLinkLibrary °³Ã¼¸¦ ¸¸µé Çʿ䰡¡£
Âü°í Ç׸ñnbsp;AfxInitExtensionModule(&N)