SDC C-Project CF Review 프로그램
LYW
2021-08-17 9aa3a8ff940e89bb0b5c75bc8abd0864e4c85874
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
// dllmain.cpp : DLL의 초기화 루틴을 정의합니다.
//
 
#include "stdafx.h"
#include <afxwin.h>
#include <afxdllx.h>
 
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
 
static AFX_EXTENSION_MODULE CHWsiControlsDLL = { NULL, NULL };
 
extern "C" int APIENTRY
DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved)
{
    // lpReserved를 사용하는 경우 다음을 제거하십시오.
    UNREFERENCED_PARAMETER(lpReserved);
 
    if (dwReason == DLL_PROCESS_ATTACH)
    {
        TRACE0("CHWsiControls.DLL을 초기화하고 있습니다.\n");
        
        // 확장 DLL을 한 번만 초기화합니다.
        if (!AfxInitExtensionModule(CHWsiControlsDLL, hInstance))
            return 0;
 
        // 이 DLL을 리소스 체인에 삽입합니다.
        // 참고: 이 확장 DLL이 MFC 응용 프로그램이
        //  아닌 ActiveX 컨트롤과 같은 MFC 기본 DLL에
        //  의해 명시적으로 링크되어 있는 경우에는
        //  DllMain에서 이 줄을 제거하고, 제거한 줄은 이 확장 DLL에서
        //  내보낸 별도의 함수에 추가합니다.
        //  그런 다음 이 확장 DLL을 사용하는 기본 DLL은
        //  해당 함수를 명시적으로 호출하여 이 확장 DLL을 추가해야 합니다.
        //  그렇지 않으면 CDynLinkLibrary 개체가
        //  기본 DLL의 리소스 체인에 추가되지 않으므로
        //  심각한 문제가 발생합니다.
 
        new CDynLinkLibrary(CHWsiControlsDLL);
 
    }
    else if (dwReason == DLL_PROCESS_DETACH)
    {
        TRACE0("CHWsiControls.DLL을 종료하고 있습니다.\n");
 
        // 소멸자가 호출되기 전에 라이브러리를 종료합니다.
        AfxTermExtensionModule(CHWsiControlsDLL);
    }
    return 1;   // 확인
}