Module — Klasa
Reprezentuje kolekcję powiązanych obiektów.
Składnia
template<ModuleType moduleType>
class Module;
template<>
class Module<InProc> : public Details::ModuleBase;
template<>
class Module<OutOfProc> : public Module<InProc>;
Parametry
moduleType
Kombinacja co najmniej jednej wartości wyliczenia ModuleType .
Członkowie
Klasy chronione
Nazwa/nazwisko | opis |
---|---|
Module::GenericReleaseNotifier | Wywołuje program obsługi zdarzeń po wydaniu ostatniego obiektu w bieżącym module. Procedura obsługi zdarzeń jest określana przez element lambda, functor lub wskaźnik-funkcja. |
Module::MethodReleaseNotifier | Wywołuje program obsługi zdarzeń po wydaniu ostatniego obiektu w bieżącym module. Procedura obsługi zdarzeń jest określana przez obiekt i jego element członkowski wskaźnika do metody. |
Module::ReleaseNotifier | Wywołuje program obsługi zdarzeń po wydaniu ostatniego obiektu w module. |
Konstruktory publiczne
Nazwa/nazwisko | opis |
---|---|
Module::~Module | Deinitializuje bieżące wystąpienie Module klasy. |
Konstruktory chronione
Nazwa/nazwisko | opis |
---|---|
Module::Module | Inicjuje nowe wystąpienie klasy Module . |
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
Module::Create | Tworzy wystąpienie modułu. |
Module::D ecrementObjectCount | Dekrementuje liczbę obiektów śledzonych przez moduł. |
Module::GetActivationFactory | Pobiera fabrykę aktywacji dla modułu. |
Module::GetClassObject | Pobiera pamięć podręczną fabryk klas. |
Module::GetModule | Tworzy wystąpienie modułu. |
Module::GetObjectCount | Pobiera liczbę obiektów zarządzanych przez ten moduł. |
Module::IncrementObjectCount | Zwiększa liczbę obiektów śledzonych przez moduł. |
Module::RegisterCOMObject | Rejestruje co najmniej jeden obiekt COM, aby inne aplikacje mogły się z nimi łączyć. |
Module::RegisterObjects | Rejestruje obiekty COM lub środowisko wykonawcze systemu Windows, aby inne aplikacje mogły się z nimi łączyć. |
Module::RegisterWinRTObject | Rejestruje co najmniej jeden obiekt środowisko wykonawcze systemu Windows, aby inne aplikacje mogły się z nimi łączyć. |
Module::Terminate | Powoduje, że wszystkie fabryki utworzone przez moduł zostaną zamknięte. |
Module::UnregisterCOMObject | Wyrejestrowuje co najmniej jeden obiekt COM, co uniemożliwia innym aplikacjom łączenie się z nimi. |
Module::UnregisterObjects | Wyrejestrowuje obiekty w określonym module, aby inne aplikacje nie mogły się z nimi połączyć. |
Module::UnregisterWinRTObject | Wyrejestrowuje co najmniej jeden obiekt środowisko wykonawcze systemu Windows, aby inne aplikacje nie mogły się z nimi łączyć. |
Metody chronione
Nazwa/nazwisko | opis |
---|---|
Module::Create | Tworzy wystąpienie modułu. |
Chronione składowe danych
Nazwa/nazwisko | opis |
---|---|
Module::objectCount_ | Śledzi liczbę klas utworzonych za pomocą funkcji Make . |
Module::releaseNotifier_ | Przechowuje wskaźnik do ReleaseNotifier obiektu. |
Makra
Nazwa/nazwisko | opis |
---|---|
Aktywowanaklasa | Wypełnia wewnętrzną pamięć podręczną zawierającą fabrykę, która może utworzyć wystąpienie określonej klasy. To makro określa domyślne parametry fabryczne i identyfikator grupy. |
AktywacjaClassWithFactory | Wypełnia wewnętrzną pamięć podręczną zawierającą fabrykę, która może utworzyć wystąpienie określonej klasy. To makro umożliwia określenie określonego parametru fabryki. |
AktywacjaClassWithFactoryEx | Wypełnia wewnętrzną pamięć podręczną zawierającą fabrykę, która może utworzyć wystąpienie określonej klasy. To makro umożliwia określenie określonych parametrów fabryki i identyfikatora grupy. |
Hierarchia dziedziczenia
ModuleBase
Module
Module
Wymagania
Nagłówek: module.h
Przestrzeń nazw: Microsoft::WRL
Module::~Module
Deinitializuje bieżące wystąpienie Module
klasy.
virtual ~Module();
Module::Create
Tworzy wystąpienie modułu.
WRL_NOTHROW static Module& Create();
template<typename T>
WRL_NOTHROW static Module& Create(
T callback
);
template<typename T>
WRL_NOTHROW static Module& Create(
_In_ T* object,
_In_ void (T::* method)()
);
Parametry
T
Typ modułu.
Wywołania zwrotnego
Wywoływana po wydaniu ostatniego obiektu wystąpienia modułu.
object
Parametry obiektu i metody są używane w kombinacji. Wskazuje ostatni obiekt wystąpienia po wydaniu ostatniego obiektu wystąpienia w module.
Metoda
Parametry obiektu i metody są używane w kombinacji. Wskazuje metodę ostatniego obiektu wystąpienia po wydaniu ostatniego obiektu wystąpienia w module.
Wartość zwracana
Odwołanie do modułu.
Module::D ecrementObjectCount
Dekrementuje liczbę obiektów śledzonych przez moduł.
virtual long DecrementObjectCount();
Wartość zwracana
Liczba przed operacją dekrementacji.
Module::GetActivationFactory
Pobiera fabrykę aktywacji dla modułu.
WRL_NOTHROW HRESULT GetActivationFactory(
_In_ HSTRING pActivatibleClassId,
_Deref_out_ IActivationFactory **ppIFactory,
wchar_t* serverName = nullptr
);
Parametry
pActivatibleClassId
Identyfikator IID klasy środowiska uruchomieniowego.
ppIFactory
IActivationFactory dla określonej klasy środowiska uruchomieniowego.
Nazwa_serwera
Nazwa podzestawu fabryk klas w bieżącym module. Określ nazwę serwera używaną w makrze ActivatableClassWithFactoryEx lub określ nullptr
, aby uzyskać domyślną nazwę serwera.
Wartość zwracana
S_OK w przypadku powodzenia; w przeciwnym razie hrESULT zwrócony przez GetActivationFactory.
Module::GetClassObject
Pobiera pamięć podręczną fabryk klas.
HRESULT GetClassObject(
REFCLSID clsid,
REFIID riid,
_Deref_out_ void **ppv,
wchar_t* serverName = nullptr
);
Parametry
Clsid
Identyfikator klasy.
Riid
Żądany identyfikator interfejsu.
Ppv
Wskaźnik do zwróconego obiektu.
Nazwa_serwera
Nazwa serwera określona w makrze ActivatableClassWithFactory
nullptr
, ActivatableClassWithFactoryEx
lub ActivatableClass
w celu uzyskania domyślnej nazwy serwera.
Wartość zwracana
Uwagi
Użyj tej metody tylko dla modelu COM, a nie środowisko wykonawcze systemu Windows. Ta metoda uwidacznia tylko IClassFactory
metody.
Module::GetModule
Tworzy wystąpienie modułu.
static Module& GetModule();
WRL_NOTHROW static Module& GetModule();
Wartość zwracana
Odwołanie do modułu.
Module::GetObjectCount
Pobiera liczbę obiektów zarządzanych przez ten moduł.
virtual long GetObjectCount() const;
Wartość zwracana
Bieżąca liczba obiektów zarządzanych przez ten moduł.
Module::IncrementObjectCount
Zwiększa liczbę obiektów śledzonych przez moduł.
virtual long IncrementObjectCount();
Wartość zwracana
Liczba przed operacją przyrostu.
Module::Module
Inicjuje nowe wystąpienie klasy Module
.
Module();
Uwagi
Ten konstruktor jest chroniony i nie może być wywoływany za pomocą słowa kluczowego new
. Zamiast tego wywołaj metodę Module::GetModule lub Module::Create.
Module::objectCount_
Śledzi liczbę klas utworzonych za pomocą funkcji Make .
volatile long objectCount_;
Module::RegisterCOMObject
Rejestruje co najmniej jeden obiekt COM, aby inne aplikacje mogły się z nimi łączyć.
WRL_NOTHROW virtual HRESULT RegisterCOMObject(
const wchar_t* serverName,
IID* clsids,
IClassFactory** factories,
DWORD* cookies,
unsigned int count);
Parametry
Nazwa_serwera
W pełni kwalifikowana nazwa serwera.
Clsid
Tablica identyfikatorów CLSID do zarejestrowania.
Fabryk
Tablica interfejsów IUnknown obiektów klasy, których dostępność jest publikowana.
Pliki cookie
Po zakończeniu operacji tablica wskaźników do wartości identyfikujących zarejestrowane obiekty klasy. Te wartości są później używane do odwoływanie rejestracji.
count
Liczba identyfikatorów CLSID do zarejestrowania.
Wartość zwracana
S_OK w przypadku powodzenia; w przeciwnym razie hrESULT, taki jak CO_E_OBJISREG, który wskazuje przyczynę niepowodzenia operacji.
Uwagi
Obiekty COM są rejestrowane przy użyciu modułu wyliczającego CLSCTX_LOCAL_SERVER wyliczenia CLSCTX.
Typ połączenia z zarejestrowanymi obiektami jest określany przez kombinację bieżącego parametru szablonu comflag i moduł wyliczający REGCLS_SUSPENDED wyliczenia REGCLS.
Module::RegisterObjects
Rejestruje obiekty COM lub środowisko wykonawcze systemu Windows, aby inne aplikacje mogły się z nimi łączyć.
HRESULT RegisterObjects(
ModuleBase* module,
const wchar_t* serverName);
Parametry
module
Tablica obiektów COM lub środowisko wykonawcze systemu Windows.
Nazwa_serwera
Nazwa serwera, który utworzył obiekty.
Wartość zwracana
S_OK w przypadku powodzenia; w przeciwnym razie HRESULT wskazujący przyczynę niepowodzenia operacji.
Module::RegisterWinRTObject
Rejestruje co najmniej jeden obiekt środowisko wykonawcze systemu Windows, aby inne aplikacje mogły się z nimi łączyć.
HRESULT RegisterWinRTObject(const wchar_t* serverName,
wchar_t** activatableClassIds,
WINRT_REGISTRATION_COOKIE* cookie,
unsigned int count)
Parametry
Nazwa_serwera
Nazwa określająca podzbiór obiektów, których dotyczy ta operacja.
aktywowanie identyfikatorówClassId
Tablica aktywowanych identyfikatorów CLSID do zarejestrowania.
Cookie
Wartość identyfikująca zarejestrowane obiekty klasy. Ta wartość jest używana później do odwołania rejestracji.
count
Liczba obiektów do zarejestrowania.
Wartość zwracana
S_OK w przypadku powodzenia; w przeciwnym razie błąd HRESULT, taki jak CO_E_OBJISREG, który wskazuje przyczynę niepowodzenia operacji.
Module::releaseNotifier_
Przechowuje wskaźnik do ReleaseNotifier
obiektu.
ReleaseNotifier *releaseNotifier_;
Module::Terminate
Powoduje, że wszystkie fabryki utworzone przez moduł zostaną zamknięte.
void Terminate();
Uwagi
Zwalnia fabryki w pamięci podręcznej.
Module::UnregisterCOMObject
Wyrejestrowuje co najmniej jeden obiekt COM, co uniemożliwia innym aplikacjom łączenie się z nimi.
virtual HRESULT UnregisterCOMObject(
const wchar_t* serverName,
DWORD* cookies,
unsigned int count
Parametry
Nazwa_serwera
(Nieużywane)
Pliki cookie
Tablica wskaźników do wartości identyfikujących obiekty klasy do wyrejestrowania. Tablica została utworzona przez metodę RegisterCOMObject .
count
Liczba klas do wyrejestrowania.
Wartość zwracana
S_OK, jeśli ta operacja zakończy się pomyślnie; w przeciwnym razie błąd HRESULT wskazujący przyczynę niepowodzenia operacji.
Module::UnregisterObjects
Wyrejestrowuje obiekty w określonym module, aby inne aplikacje nie mogły się z nimi połączyć.
HRESULT UnregisterObjects(
ModuleBase* module,
const wchar_t* serverName);
Parametry
module
Wskaźnik do modułu.
Nazwa_serwera
Kwalifikowana nazwa określająca podzestaw obiektów, których dotyczy ta operacja.
Wartość zwracana
S_OK, jeśli ta operacja zakończy się pomyślnie; w przeciwnym razie błąd HRESULT wskazujący przyczynę niepowodzenia tej operacji.
Module::UnregisterWinRTObject
Wyrejestrowuje co najmniej jeden obiekt środowisko wykonawcze systemu Windows, aby inne aplikacje nie mogły się z nimi łączyć.
virtual HRESULT UnregisterWinRTObject(
unsigned int,
_Inout_ WINRT_REGISTRATION_COOKIE* cookie
);
Parametry
Cookie
Wskaźnik do wartości identyfikującej obiekt klasy, którego rejestracja ma zostać odwołana.
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla