CAtlDllModuleT 클래스
이 클래스는 DLL의 모듈을 나타냅니다.
구문
template <class T>
class ATL_NO_VTABLE CAtlDllModuleT : public CAtlModuleT<T>
매개 변수
T
에서 파생된 CAtlDllModuleT
클래스입니다.
멤버
공용 생성자
속성 | 설명 |
---|---|
CAtlDllModuleT::CAtlDllModuleT | 생성자입니다. |
CAtlDllModuleT::~CAtlDllModuleT | 소멸자입니다. |
공용 메서드
이름 | 설명 |
---|---|
CAtlDllModuleT::D llCanUnloadNow | DLL을 언로드할 수 있는지 테스트합니다. |
CAtlDllModuleT::D llGetClassObject | 클래스 팩터리를 반환합니다. |
CAtlDllModuleT::D llMain | DLL(동적 연결 라이브러리)에 대한 선택적 진입점입니다. |
CAtlDllModuleT::D llRegisterServer | DLL의 개체에 대한 항목을 시스템 레지스트리에 추가합니다. |
CAtlDllModuleT::D llUnregisterServer | DLL의 개체에 대한 시스템 레지스트리의 항목을 제거합니다. |
CAtlDllModuleT::GetClassObject | 클래스 팩터리를 반환합니다. DllGetClassObject에서 호출됩니다. |
설명
CAtlDllModuleT
는 DLL(동적 연결 라이브러리)의 모듈을 나타내며 모든 DLL 프로젝트에서 사용되는 함수를 제공합니다. 이 CAtlModuleT 클래스 전문화에는 등록 지원이 포함됩니다.
ATL의 모듈에 대한 자세한 내용은 ATL 모듈 클래스를 참조 하세요.
상속 계층 구조
CAtlDllModuleT
요구 사항
헤더: atlbase.h
CAtlDllModuleT::CAtlDllModuleT
생성자입니다.
CAtlDllModuleT() throw();
CAtlDllModuleT::~CAtlDllModuleT
소멸자입니다.
~CAtlDllModuleT() throw();
CAtlDllModuleT::D llCanUnloadNow
DLL을 언로드할 수 있는지 테스트합니다.
HRESULT DllCanUnloadNow() throw();
Return Value
DLL을 언로드할 수 있으면 S_OK 반환하고, DLL을 언로드할 수 없는 경우 S_FALSE 반환합니다.
CAtlDllModuleT::D llGetClassObject
클래스 팩터리를 반환합니다.
HRESULT DllGetClassObject(
REFCLSID rclsid,
REFIID riid,
LPVOID* ppv) throw();
매개 변수
rclsid
만들 개체의 CLSID입니다.
riid
요청된 인터페이스의 IID입니다.
ppv
riid로 식별되는 인터페이스 포인터에 대한 포인터입니다. 개체가 이 인터페이스 를 지원하지 않는 경우 ppv 는 NULL로 설정됩니다.
Return Value
성공 시 S_OK를 반환하거나 실패 시 HRESULT 오류를 반환합니다.
CAtlDllModuleT::D llMain
DLL(동적 연결 라이브러리)에 대한 선택적 진입점입니다.
BOOL WINAPI DllMain(DWORD dwReason, LPVOID /* lpReserved*/) throw();
매개 변수
dwReason
DLL_PROCESS_ATTACH 설정하면 DLL_THREAD_ATTACH 및 DLL_THREAD_DETACH 알림 호출이 비활성화됩니다.
lpReserved
예약되었습니다.
Return Value
항상 TRUE를 반환합니다.
설명
DLL_THREAD_ATTACH 및 DLL_THREAD_DETACH 알림 호출을 사용하지 않도록 설정하면 DLL이 많고, 스레드를 자주 만들고 삭제하며, DLL에 첨부 파일/분리에 대한 스레드 수준 알림이 필요하지 않은 다중 스레드 애플리케이션에 대한 유용한 최적화가 될 수 있습니다.
CAtlDllModuleT::D llRegisterServer
DLL의 개체에 대한 항목을 시스템 레지스트리에 추가합니다.
HRESULT DllRegisterServer(BOOL bRegTypeLib = TRUE) throw();
매개 변수
bRegTypeLib
형식 라이브러리를 등록하려면 TRUE입니다. 기본값은 TRUE입니다.
Return Value
성공 시 S_OK를 반환하거나 실패 시 HRESULT 오류를 반환합니다.
CAtlDllModuleT::D llUnregisterServer
DLL의 개체에 대한 시스템 레지스트리의 항목을 제거합니다.
HRESULT DllUnregisterServer(BOOL bUnRegTypeLib = TRUE) throw();
매개 변수
bUnRegTypeLib
형식 라이브러리를 레지스트리에서 제거할 경우 TRUE입니다. 기본값은 TRUE입니다.
Return Value
성공 시 S_OK를 반환하거나 실패 시 HRESULT 오류를 반환합니다.
CAtlDllModuleT::GetClassObject
지정된 CLSID의 개체를 만듭니다.
HRESULT GetClassObject(
REFCLSID rclsid,
REFIID riid,
LPVOID* ppv) throw();
매개 변수
rclsid
만들 개체의 CLSID입니다.
riid
요청된 인터페이스의 IID입니다.
ppv
riid로 식별되는 인터페이스 포인터에 대한 포인터입니다. 개체가 이 인터페이스 를 지원하지 않는 경우 ppv 는 NULL로 설정됩니다.
Return Value
성공 시 S_OK를 반환하거나 실패 시 HRESULT 오류를 반환합니다.
설명
이 메서드는 CAtlDllModuleT::D llGetClassObject에서 호출되며 이전 버전과의 호환성을 위해 포함됩니다.