Udostępnij za pośrednictwem


Klasa CAtlModule

Ta klasa udostępnia metody używane przez kilka klas modułów ATL.

Składnia

class ATL_NO_VTABLE CAtlModule : public _ATL_MODULE

Elementy członkowskie

Konstruktory publiczne

Nazwa/nazwisko opis
CAtlModule::CAtlModule Konstruktor.
CAtlModule::~CAtlModule Destruktora.

Metody publiczne

Nazwa/nazwisko opis
CAtlModule::AddCommonRGSReplacements Zastąp tę metodę, aby dodać parametry do mapy zastępczej składnika rejestru ATL (rejestratora).
CAtlModule::AddTermFunc Dodaje nową funkcję do wywołania po zakończeniu modułu.
CAtlModule::GetGITPtr Zwraca wskaźnik interfejsu globalnego.
CAtlModule::GetLockCount Zwraca liczbę blokad.
CAtlModule::Lock Zwiększa liczbę blokad.
CAtlModule::Term Zwalnia wszystkie elementy członkowskie danych.
CAtlModule::Unlock Dekrementuje liczbę blokad.
CAtlModule::UpdateRegistryFromResourceD Uruchamia skrypt zawarty w określonym zasobie, aby zarejestrować lub wyrejestrować obiekt.
CAtlModule::UpdateRegistryFromResourceDHelper Ta metoda jest wywoływana przez UpdateRegistryFromResourceD program w celu przeprowadzenia aktualizacji rejestru.
CAtlModule::UpdateRegistryFromResourceS Uruchamia skrypt zawarty w określonym zasobie, aby zarejestrować lub wyrejestrować obiekt. Ta metoda statycznie łączy się ze składnikiem rejestru ATL.

Publiczne elementy członkowskie danych

Nazwa/nazwisko opis
CAtlModule::m_libid Zawiera identyfikator GUID bieżącego modułu.
CAtlModule::m_pGIT Wskaźnik do tabeli interfejsu globalnego.

Uwagi

Ta klasa jest używana przez klasę CAtlDllModuleT, klasę CAtlExeModuleT i klasę CAtlServiceModuleT, aby zapewnić obsługę aplikacji DLL, aplikacji EXE i usług systemu Windows odpowiednio.

Aby uzyskać więcej informacji na temat modułów w atl, zobacz ATL Module Classes (Klasy modułów ATL).

Ta klasa zastępuje przestarzałą klasę CComModule używaną we wcześniejszych wersjach atl.

Hierarchia dziedziczenia

_ATL_MODULE

CAtlModule

Wymagania

Nagłówek: atlbase.h

CAtlModule::AddCommonRGSReplacements

Zastąp tę metodę, aby dodać parametry do mapy zastępczej składnika rejestru ATL (rejestratora).

virtual HRESULT AddCommonRGSReplacements(IRegistrarBase* /* pRegistrar*/) throw() = 0;

Parametry

pRegistrar
Zarezerwowany.

Wartość zwracana

Zwraca S_OK powodzenia lub błąd HRESULT w przypadku niepowodzenia.

Uwagi

Parametry możliwe do zastąpienia umożliwiają klientowi rejestratora określanie danych czasu wykonywania. W tym celu rejestrator przechowuje mapę zastępczą, do której wprowadza wartości skojarzone z parametrami, które można zamienić w skrypcie. Rejestrator tworzy te wpisy w czasie wykonywania.

Aby uzyskać więcej informacji, zobacz temat Using Replaceable Parameters (Preprocesor Rejestratora).

CAtlModule::AddTermFunc

Dodaje nową funkcję do wywołania po zakończeniu modułu.

HRESULT AddTermFunc(_ATL_TERMFUNC* pFunc, DWORD_PTR dw) throw();

Parametry

funkcja pFunc
Wskaźnik do funkcji do dodania.

Dw
Dane zdefiniowane przez użytkownika przekazywane do funkcji.

Wartość zwracana

Zwraca S_OK powodzenia lub błąd HRESULT w przypadku niepowodzenia.

CAtlModule::CAtlModule

Konstruktor.

CAtlModule() throw();

Uwagi

Inicjuje elementy członkowskie danych i inicjuje sekcję krytyczną wokół wątku modułu.

CAtlModule::~CAtlModule

Destruktora.

~CAtlModule() throw();

Uwagi

Zwalnia wszystkie elementy członkowskie danych.

CAtlModule::GetGITPtr

Pobiera wskaźnik do tabeli interfejsu globalnego.

virtual HRESULT GetGITPtr(IGlobalInterfaceTable** ppGIT) throw();

Parametry

ppGIT
Wskaźnik do zmiennej, która otrzyma wskaźnik do tabeli interfejsu globalnego.

Wartość zwracana

Zwraca S_OK powodzenia lub kod błędu w przypadku błędu. E_POINTER jest zwracana, jeśli wartość ppGIT jest równa null.

Uwagi

Jeśli obiekt tabeli interfejsu globalnego nie istnieje, zostanie utworzony, a jego adres jest przechowywany w zmiennej składowej CAtlModule::m_pGIT.

W kompilacjach debugowania wystąpi błąd asercji, jeśli funkcja ppGIT jest równa NULL lub jeśli nie można uzyskać wskaźnika tabeli interfejsu globalnego.

Aby uzyskać informacje na temat tabeli interfejsu globalnego, zobacz IGlobalInterfaceTable .

CAtlModule::GetLockCount

Zwraca liczbę blokad.

virtual LONG GetLockCount() throw();

Wartość zwracana

Zwraca liczbę blokad. Ta wartość może być przydatna do diagnostyki i debugowania.

CAtlModule::Lock

Zwiększa liczbę blokad.

virtual LONG Lock() throw();

Wartość zwracana

Zwiększa liczbę blokad i zwraca zaktualizowaną wartość. Ta wartość może być przydatna do diagnostyki i debugowania.

CAtlModule::m_libid

Zawiera identyfikator GUID bieżącego modułu.

static GUID m_libid;

CAtlModule::m_pGIT

Wskaźnik do tabeli interfejsu globalnego.

IGlobalInterfaceTable* m_pGIT;

CAtlModule::Term

Zwalnia wszystkie elementy członkowskie danych.

void Term() throw();

Uwagi

Zwalnia wszystkie elementy członkowskie danych. Ta metoda jest wywoływana przez destruktor.

CAtlModule::Unlock

Dekrementuje liczbę blokad.

virtual LONG Unlock() throw();

Wartość zwracana

Dekrementuje liczbę blokad i zwraca zaktualizowaną wartość. Ta wartość może być przydatna do diagnostyki i debugowania.

CAtlModule::UpdateRegistryFromResourceD

Uruchamia skrypt zawarty w określonym zasobie, aby zarejestrować lub wyrejestrować obiekt.

HRESULT WINAPI UpdateRegistryFromResourceD(
    UINT nResID,
    BOOL bRegister,
    struct _ATL_REGMAP_ENTRY* pMapEntries = NULL) throw();

HRESULT WINAPI UpdateRegistryFromResourceD(
    LPCTSTR lpszRes,
    BOOL bRegister,
    struct _ATL_REGMAP_ENTRY* pMapEntries = NULL) throw();

Parametry

lpszRes
Nazwa zasobu.

nResID
Identyfikator zasobu.

bRegister
Wartość TRUE, jeśli obiekt powinien być zarejestrowany; FAŁSZ w przeciwnym razie.

pMapEntries
Wskaźnik do mapy zastępczej przechowujące wartości skojarzone z parametrami, które można zastąpić skryptu. Usługa ATL automatycznie używa %MODULE%. Aby użyć dodatkowych parametrów możliwych do zastąpienia, zobacz CAtlModule::AddCommonRGSReplacements. W przeciwnym razie użyj wartości domyślnej NULL.

Wartość zwracana

Zwraca S_OK powodzenia lub błąd HRESULT w przypadku niepowodzenia.

Uwagi

Uruchamia skrypt zawarty w zasobie określonym przez lpszRes lub nResID. Jeśli wartość bRegister ma wartość TRUE, ta metoda rejestruje obiekt w rejestrze systemowym; w przeciwnym razie usuwa obiekt z rejestru.

Aby statycznie połączyć się ze składnikiem rejestru ATL (Rejestrator), zobacz CAtlModule::UpdateRegistryFromResourceS.

Ta metoda wywołuje metodę CAtlModule::UpdateRegistryFromResourceDHelper i IRegistrar::ResourceUnregister.

CAtlModule::UpdateRegistryFromResourceDHelper

Ta metoda jest wywoływana przez UpdateRegistryFromResourceD program w celu przeprowadzenia aktualizacji rejestru.

inline HRESULT WINAPI UpdateRegistryFromResourceDHelper(
    LPCOLESTR lpszRes,
    BOOL bRegister,
    struct _ATL_REGMAP_ENTRY* pMapEntries = NULL) throw();

Parametry

lpszRes
Nazwa zasobu.

bRegister
Wskazuje, czy obiekt ma być zarejestrowany.

pMapEntries
Wskaźnik do mapy zastępczej przechowujące wartości skojarzone z parametrami, które można zastąpić skryptu. Usługa ATL automatycznie używa %MODULE%. Aby użyć dodatkowych parametrów możliwych do zastąpienia, zobacz CAtlModule::AddCommonRGSReplacements. W przeciwnym razie użyj wartości domyślnej NULL.

Wartość zwracana

Zwraca S_OK powodzenia lub błąd HRESULT w przypadku niepowodzenia.

Uwagi

Ta metoda zapewnia implementację CAtlModule::UpdateRegistryFromResourceD.

CAtlModule::UpdateRegistryFromResourceS

Uruchamia skrypt zawarty w określonym zasobie, aby zarejestrować lub wyrejestrować obiekt. Ta metoda statycznie łączy się ze składnikiem rejestru ATL.

HRESULT WINAPI UpdateRegistryFromResourceS(
    UINT nResID,
    BOOL bRegister,
    struct _ATL_REGMAP_ENTRY* pMapEntries = NULL) throw();

HRESULT WINAPI UpdateRegistryFromResourceS(
    LPCTSTR lpszRes,
    BOOL bRegister,
    struct _ATL_REGMAP_ENTRY* pMapEntries = NULL) throw();

Parametry

nResID
Identyfikator zasobu.

lpszRes
Nazwa zasobu.

bRegister
Wskazuje, czy skrypt zasobu powinien zostać zarejestrowany.

pMapEntries
Wskaźnik do mapy zastępczej przechowujące wartości skojarzone z parametrami, które można zastąpić skryptu. Usługa ATL automatycznie używa %MODULE%. Aby użyć dodatkowych parametrów możliwych do zastąpienia, zobacz CAtlModule::AddCommonRGSReplacements. W przeciwnym razie użyj wartości domyślnej NULL.

Wartość zwracana

Zwraca S_OK powodzenia lub błąd HRESULT w przypadku niepowodzenia.

Uwagi

Podobnie jak CAtlModule::UpdateRegistryFromResourceD z wyjątkiem CAtlModule::UpdateRegistryFromResourceS tworzy statyczny link do składnika rejestru ATL (Rejestrator).

Zobacz też

_ATL_MODULE
Omówienie klasy
Klasy modułów
Składnik rejestru (rejestrator)