Kelas Modul
Mewakili kumpulan objek terkait.
Sintaks
template<ModuleType moduleType>
class Module;
template<>
class Module<InProc> : public Details::ModuleBase;
template<>
class Module<OutOfProc> : public Module<InProc>;
Parameter
moduleType
Kombinasi satu atau beberapa nilai enumerasi ModuleType .
Anggota
Kelas yang Dilindungi
Nama | Deskripsi |
---|---|
Module::GenericReleaseNotifier | Memanggil penanganan aktivitas saat objek terakhir dalam modul saat ini dirilis. Penanganan aktivitas ditentukan oleh pada lambda, functor, atau pointer-to-function. |
Module::MethodReleaseNotifier | Memanggil penanganan aktivitas saat objek terakhir dalam modul saat ini dirilis. Penanganan aktivitas ditentukan oleh objek dan anggota pointer-to-a-method-nya. |
Module::ReleaseNotifier | Memanggil penanganan aktivitas saat objek terakhir dalam modul dirilis. |
Konstruktor Publik
Nama | Deskripsi |
---|---|
Module::~Module | Mendeinisialisasi instans Module kelas saat ini. |
Konstruktor yang Dilindungi
Nama | Deskripsi |
---|---|
Module::Module | Menginisialisasi instans baru kelas Module . |
Metode Publik
Nama | Deskripsi |
---|---|
Module::Create | Membuat instans modul. |
Module::D ecrementObjectCount | Mengurangi jumlah objek yang dilacak oleh modul. |
Module::GetActivationFactory | Mendapatkan pabrik aktivasi untuk modul. |
Module::GetClassObject | Mengambil cache pabrik kelas. |
Module::GetModule | Membuat instans modul. |
Module::GetObjectCount | Mengambil jumlah objek yang dikelola oleh modul ini. |
Module::IncrementObjectCount | Menaikkan jumlah objek yang dilacak oleh modul. |
Module::RegisterCOMObject | Mendaftarkan satu atau beberapa objek COM sehingga aplikasi lain dapat terhubung ke objek tersebut. |
Module::RegisterObjects | Mendaftarkan objek COM atau Windows Runtime sehingga aplikasi lain dapat tersambung ke objek tersebut. |
Module::RegisterWinRTObject | Mendaftarkan satu atau beberapa objek Windows Runtime sehingga aplikasi lain dapat tersambung ke objek tersebut. |
Module::Hentikan | Menyebabkan semua pabrik yang dibuat oleh modul dimatikan. |
Module::UnregisterCOMObject | Membatalkan pendaftaran satu atau beberapa objek COM, yang mencegah aplikasi lain tersambung ke objek tersebut. |
Module::UnregisterObjects | Membatalkan pendaftaran objek dalam modul yang ditentukan sehingga aplikasi lain tidak dapat tersambung ke objek tersebut. |
Module::UnregisterWinRTObject | Membatalkan pendaftaran satu atau beberapa objek Windows Runtime sehingga aplikasi lain tidak dapat tersambung ke objek tersebut. |
Metode yang Dilindungi
Nama | Deskripsi |
---|---|
Module::Create | Membuat instans modul. |
Anggota Data yang Dilindungi
Nama | Deskripsi |
---|---|
Module::objectCount_ | Melacak berapa banyak kelas yang telah dibuat dengan fungsi Buat . |
Module::releaseNotifier_ | Menahan penunjuk ke ReleaseNotifier objek. |
Makro
Nama | Deskripsi |
---|---|
ActivatableClass | Mengisi cache internal yang berisi pabrik yang dapat membuat instans kelas yang ditentukan. Makro ini menentukan parameter pabrik default dan ID grup. |
ActivatableClassWithFactory | Mengisi cache internal yang berisi pabrik yang dapat membuat instans kelas yang ditentukan. Makro ini memungkinkan Anda menentukan parameter pabrik tertentu. |
ActivatableClassWithFactoryEx | Mengisi cache internal yang berisi pabrik yang dapat membuat instans kelas yang ditentukan. Makro ini memungkinkan Anda menentukan parameter ID pabrik dan grup tertentu. |
Hierarki Warisan
ModuleBase
Module
Module
Persyaratan
Header: module.h
Namespace: Microsoft::WRL
Module::~Module
Mendeinisialisasi instans Module
kelas saat ini.
virtual ~Module();
Module::Create
Membuat instans modul.
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)()
);
Parameter
T
Jenis modul.
Callback
Dipanggil saat objek instans terakhir modul dirilis.
object
Parameter objek dan metode digunakan dalam kombinasi. Menunjuk ke objek instans terakhir saat objek instans terakhir dalam modul dirilis.
metode
Parameter objek dan metode digunakan dalam kombinasi. Arahkan ke metode objek instans terakhir saat objek instans terakhir dalam modul dirilis.
Tampilkan Nilai
Referensi ke modul.
Module::D ecrementObjectCount
Mengurangi jumlah objek yang dilacak oleh modul.
virtual long DecrementObjectCount();
Tampilkan Nilai
Hitungan sebelum operasi penurunan.
Module::GetActivationFactory
Mendapatkan pabrik aktivasi untuk modul.
WRL_NOTHROW HRESULT GetActivationFactory(
_In_ HSTRING pActivatibleClassId,
_Deref_out_ IActivationFactory **ppIFactory,
wchar_t* serverName = nullptr
);
Parameter
pActivatibleClassId
IID kelas runtime.
ppIFactory
IActivationFactory untuk kelas runtime yang ditentukan.
serverName
Nama subset pabrik kelas dalam modul saat ini. Tentukan nama server yang digunakan dalam makro ActivatableClassWithFactoryEx , atau tentukan nullptr
untuk mendapatkan nama server default.
Tampilkan Nilai
S_OK jika berhasil; jika tidak, HRESULT yang dikembalikan oleh GetActivationFactory.
Module::GetClassObject
Mengambil cache pabrik kelas.
HRESULT GetClassObject(
REFCLSID clsid,
REFIID riid,
_Deref_out_ void **ppv,
wchar_t* serverName = nullptr
);
Parameter
clsid
ID Kelas.
riid
ID antarmuka yang Anda minta.
ppv
Penunjuk ke objek yang dikembalikan.
serverName
Nama server yang ditentukan baik di ActivatableClassWithFactory
makro , , ActivatableClassWithFactoryEx
atau ActivatableClass
; atau nullptr
untuk mendapatkan nama server default.
Tampilkan Nilai
Keterangan
Gunakan metode ini hanya untuk COM, bukan Windows Runtime. Metode ini hanya IClassFactory
mengekspos metode.
Module::GetModule
Membuat instans modul.
static Module& GetModule();
WRL_NOTHROW static Module& GetModule();
Tampilkan Nilai
Referensi ke modul.
Module::GetObjectCount
Mengambil jumlah objek yang dikelola oleh modul ini.
virtual long GetObjectCount() const;
Tampilkan Nilai
Jumlah objek saat ini yang dikelola oleh modul ini.
Module::IncrementObjectCount
Menaikkan jumlah objek yang dilacak oleh modul.
virtual long IncrementObjectCount();
Tampilkan Nilai
Hitungan sebelum operasi kenaikan.
Module::Module
Menginisialisasi instans baru kelas Module
.
Module();
Keterangan
Konstruktor ini dilindungi dan tidak dapat dipanggil dengan new
kata kunci. Sebagai gantinya , panggil Modul::GetModule atau Module::Create.
Module::objectCount_
Melacak berapa banyak kelas yang telah dibuat dengan fungsi Buat .
volatile long objectCount_;
Module::RegisterCOMObject
Mendaftarkan satu atau beberapa objek COM sehingga aplikasi lain dapat terhubung ke objek tersebut.
WRL_NOTHROW virtual HRESULT RegisterCOMObject(
const wchar_t* serverName,
IID* clsids,
IClassFactory** factories,
DWORD* cookies,
unsigned int count);
Parameter
serverName
Nama server yang sepenuhnya memenuhi syarat.
clsids
Array CLSID untuk didaftarkan.
Pabrik
Array antarmuka IUnknown dari objek kelas yang ketersediaannya sedang diterbitkan.
cookies
Ketika operasi selesai, array pointer ke nilai yang mengidentifikasi objek kelas yang didaftarkan. Nilai-nilai ini kemudian digunakan mencabut pendaftaran.
count
Jumlah CLSID yang akan didaftarkan.
Tampilkan Nilai
S_OK jika berhasil; jika tidak, HRESULT seperti CO_E_OBJISREG yang menunjukkan alasan operasi gagal.
Keterangan
Objek COM terdaftar dengan enumerator CLSCTX_LOCAL_SERVER enumerasi CLSCTX.
Jenis koneksi ke objek terdaftar ditentukan oleh kombinasi parameter templat comflag saat ini dan enumerator REGCLS_SUSPENDED enumerasi REGCLS.
Module::RegisterObjects
Mendaftarkan objek COM atau Windows Runtime sehingga aplikasi lain dapat tersambung ke objek tersebut.
HRESULT RegisterObjects(
ModuleBase* module,
const wchar_t* serverName);
Parameter
module
Array objek COM atau Windows Runtime.
serverName
Nama server yang membuat objek.
Tampilkan Nilai
S_OK jika berhasil; jika tidak, HRESULT yang menunjukkan alasan operasi gagal.
Module::RegisterWinRTObject
Mendaftarkan satu atau beberapa objek Windows Runtime sehingga aplikasi lain dapat tersambung ke objek tersebut.
HRESULT RegisterWinRTObject(const wchar_t* serverName,
wchar_t** activatableClassIds,
WINRT_REGISTRATION_COOKIE* cookie,
unsigned int count)
Parameter
serverName
Nama yang menentukan subset objek yang terpengaruh oleh operasi ini.
activatableClassIds
Array CLSID yang dapat diaktifkan untuk mendaftar.
kue
Nilai yang mengidentifikasi objek kelas yang terdaftar. Nilai ini digunakan nanti untuk mencabut pendaftaran.
count
Jumlah objek yang akan didaftarkan.
Tampilkan Nilai
S_OK jika berhasil; jika tidak, kesalahan HRESULT seperti CO_E_OBJISREG yang menunjukkan alasan operasi gagal.
Module::releaseNotifier_
Menahan penunjuk ke ReleaseNotifier
objek.
ReleaseNotifier *releaseNotifier_;
Module::Hentikan
Menyebabkan semua pabrik yang dibuat oleh modul dimatikan.
void Terminate();
Keterangan
Merilis pabrik di cache.
Module::UnregisterCOMObject
Membatalkan pendaftaran satu atau beberapa objek COM, yang mencegah aplikasi lain tersambung ke objek tersebut.
virtual HRESULT UnregisterCOMObject(
const wchar_t* serverName,
DWORD* cookies,
unsigned int count
Parameter
serverName
(Tidak digunakan)
cookies
Array pointer ke nilai yang mengidentifikasi objek kelas yang tidak terdaftar. Array dibuat oleh metode RegisterCOMObject .
count
Jumlah kelas yang akan batalkan pendaftaran.
Tampilkan Nilai
S_OK jika operasi ini berhasil; jika tidak, kesalahan HRESULT yang menunjukkan alasan operasi gagal.
Module::UnregisterObjects
Membatalkan pendaftaran objek dalam modul yang ditentukan sehingga aplikasi lain tidak dapat tersambung ke objek tersebut.
HRESULT UnregisterObjects(
ModuleBase* module,
const wchar_t* serverName);
Parameter
module
Penunjuk ke modul.
serverName
Nama yang memenuhi syarat yang menentukan subset objek yang terpengaruh oleh operasi ini.
Tampilkan Nilai
S_OK jika operasi ini berhasil; jika tidak, kesalahan HRESULT yang menunjukkan alasan operasi ini gagal.
Module::UnregisterWinRTObject
Membatalkan pendaftaran satu atau beberapa objek Windows Runtime sehingga aplikasi lain tidak dapat tersambung ke objek tersebut.
virtual HRESULT UnregisterWinRTObject(
unsigned int,
_Inout_ WINRT_REGISTRATION_COOKIE* cookie
);
Parameter
kue
Pointer ke nilai yang mengidentifikasi objek kelas yang pendaftarannya akan dicabut.