Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Mewakili kelas WinRT atau COM yang mewarisi antarmuka yang ditentukan dan menyediakan Windows Runtime, COM klasik, dan dukungan referensi yang lemah yang ditentukan.
Kelas ini menyediakan implementasi boilerplate kelas WinRT dan COM, menyediakan implementasi QueryInterface, AddRef, Release dll., mengelola jumlah referensi modul dan memiliki dukungan untuk menyediakan pabrik kelas untuk objek yang dapat diaktifkan.
Sintaks
template <typename ...TInterfaces> class RuntimeClass
template <unsigned int classFlags, typename ...TInterfaces> class RuntimeClass;
Parameter
classFlags
Parameter opsional. Kombinasi satu atau beberapa RuntimeClassType nilai enumerasi. __WRL_CONFIGURATION_LEGACY__ Makro dapat didefinisikan untuk mengubah nilai classFlags default untuk semua kelas runtime dalam proyek. Jika ditentukan, RuntimeClass instans tidak tangkas secara default. Ketika tidak ditentukan, RuntimeClass instans tangkas secara default. Untuk menghindari ambiguitas, selalu tentukan Microsoft::WRL::FtmBase di TInterfaces atau RuntimeClassType::InhibitFtmBase. Jika InhibitFtmBase dan FtmBase keduanya digunakan, objek akan tangkas.
TInterfaces
Daftar antarmuka yang diterapkan objek di luar IUnknown, IInspectable atau antarmuka lain yang dikontrol oleh RuntimeClassType. Ini juga dapat mencantumkan kelas lain yang berasal dari, terutama Microsoft::WRL::FtmBase untuk membuat objek gesar dan menyebabkannya mengimplementasikan IMarshal.
Anggota
RuntimeClassInitialize
Fungsi yang menginisialisasi objek jika MakeAndInitialize templat fungsi digunakan untuk membuat objek. Ini mengembalikan jika objek berhasil diinisialisasi, atau kode kesalahan COM jika inisialisasi S_OK gagal. Kode kesalahan COM disebarluaskan sebagai nilai pengembalian .MakeAndInitialize Metode RuntimeClassInitialize ini tidak dipanggil jika Make templat fungsi digunakan untuk membuat objek.
Konstruktor Publik
| Nama | Deskripsi |
|---|---|
RuntimeClass::RuntimeClass |
Menginisialisasi instans RuntimeClass kelas saat ini. |
RuntimeClass::~RuntimeClass |
Mendeinisialisasi instans RuntimeClass kelas saat ini. |
Metode Publik
| Nama | Deskripsi |
|---|---|
RuntimeClass::AddRef |
Menaikkan jumlah referensi untuk objek saat ini RuntimeClass . |
RuntimeClass::DecrementReference |
Mengurangi jumlah referensi untuk objek saat ini RuntimeClass . |
RuntimeClass::GetIids |
Mendapatkan array yang dapat berisi ID antarmuka yang diimplementasikan oleh objek saat ini RuntimeClass . |
RuntimeClass::GetRuntimeClassName |
Mendapatkan nama kelas runtime objek saat ini RuntimeClass . |
RuntimeClass::GetTrustLevel |
Mendapatkan tingkat kepercayaan objek saat ini RuntimeClass . |
RuntimeClass::GetWeakReference |
Mendapatkan penunjuk ke objek referensi yang lemah untuk objek saat ini RuntimeClass . |
RuntimeClass::InternalAddRef |
Menaikkan jumlah referensi ke objek saat ini RuntimeClass . |
RuntimeClass::QueryInterface |
Mengambil penunjuk ke ID antarmuka yang ditentukan. |
RuntimeClass::Release |
Melakukan operasi Rilis COM pada objek saat ini RuntimeClass . |
Hierarki Warisan
Hierarki adalah detail implementasi.
Persyaratan
Header: implements.h
kumpulan nama XML: Microsoft::WRL
RuntimeClass::~RuntimeClass
Mendeinisialisasi instans RuntimeClass kelas saat ini.
virtual ~RuntimeClass();
RuntimeClass::AddRef
Menaikkan jumlah referensi untuk objek saat ini RuntimeClass .
STDMETHOD_(
ULONG,
AddRef
)();
Nilai hasil
S_OK jika berhasil; jika tidak, yang HRESULT menunjukkan kesalahan.
RuntimeClass::DecrementReference
Mengurangi jumlah referensi untuk objek saat ini RuntimeClass .
ULONG DecrementReference();
Nilai hasil
S_OK jika berhasil; jika tidak, yang HRESULT menunjukkan kesalahan.
RuntimeClass::GetIids
Mendapatkan array yang dapat berisi ID antarmuka yang diimplementasikan oleh objek saat ini RuntimeClass .
STDMETHOD(
GetIids
)
(_Out_ ULONG *iidCount,
_Deref_out_ _Deref_post_cap_(*iidCount) IID **iids);
Parameter
iidCount
Ketika operasi ini selesai, jumlah total elemen dalam array iids.
iids
Ketika operasi ini selesai, penunjuk ke array ID antarmuka.
Nilai hasil
S_OK jika berhasil; jika tidak, E_OUTOFMEMORY.
RuntimeClass::GetRuntimeClassName
Mendapatkan nama kelas runtime objek saat ini RuntimeClass .
STDMETHOD( GetRuntimeClassName )(
_Out_ HSTRING* runtimeName
);
Parameter
runtimeName
Ketika operasi ini selesai, nama kelas runtime.
Nilai hasil
S_OK jika berhasil; jika tidak, yang HRESULT menunjukkan kesalahan.
Keterangan
Kesalahan pernyataan dipancarkan jika __WRL_STRICT__ atau __WRL_FORCE_INSPECTABLE_CLASS_MACRO__ tidak ditentukan.
RuntimeClass::GetTrustLevel
Mendapatkan tingkat kepercayaan objek saat ini RuntimeClass .
STDMETHOD(GetTrustLevel)(
_Out_ TrustLevel* trustLvl
);
Parameter
trustLvl
Ketika operasi ini selesai, tingkat kepercayaan objek saat ini RuntimeClass .
Nilai hasil
Selalu S_OK.
Keterangan
Kesalahan pernyataan dipancarkan jika __WRL_STRICT__ atau __WRL_FORCE_INSPECTABLE_CLASS_MACRO__ tidak ditentukan.
RuntimeClass::GetWeakReference
Mendapatkan penunjuk ke objek referensi yang lemah untuk objek saat ini RuntimeClass .
STDMETHOD(
GetWeakReference
)(_Deref_out_ IWeakReference **weakReference);
Parameter
weakReference
Ketika operasi ini selesai, penunjuk ke objek referensi yang lemah.
Nilai hasil
Selalu S_OK.
RuntimeClass::InternalAddRef
Menaikkan jumlah referensi ke objek saat ini RuntimeClass .
ULONG InternalAddRef();
Nilai hasil
Jumlah referensi yang dihasilkan.
RuntimeClass::QueryInterface
Mengambil penunjuk ke ID antarmuka yang ditentukan.
STDMETHOD(
QueryInterface
)
(REFIID riid,
_Deref_out_ void **ppvObject);
Parameter
riid
ID antarmuka.
ppvObject
Ketika operasi ini selesai, penunjuk ke antarmuka yang ditentukan oleh riid parameter .
Nilai hasil
S_OK jika berhasil; jika tidak, yang HRESULT menunjukkan kesalahan.
RuntimeClass::Release
Melakukan operasi Rilis COM pada objek saat ini RuntimeClass .
STDMETHOD_(
ULONG,
Release
)();
Nilai hasil
S_OK jika berhasil; jika tidak, yang HRESULT menunjukkan kesalahan.
Keterangan
Jika jumlah referensi menjadi nol, RuntimeClass objek akan dihapus.
RuntimeClass::RuntimeClass
Menginisialisasi instans RuntimeClass kelas saat ini.
RuntimeClass();