Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der winrt-Namespace stellt benutzerdefinierte Datentypen bereit, die zu C++/WinRT gehören – der modernen Standard-C++17-Sprachprojektion für Windows-Runtime -APIs (WinRT). Diese benutzerdefinierten Typen bieten geeignete Konvertierungen in und aus Standardtypen, sodass Sie die C++-Standardsprachfeatures, die Sie gewohnt sind, und den bereits vorhandenen Quellcode weiterhin verwenden können.
Außerdem werden im winrt-Namespace Funktionen (zum Erstellen von Runtimeklasseninstanzen, Boxing und Unboxing usw.), intelligente Zeiger und andere Einrichtungen bereitgestellt.
Typen im winrt-Namespace
| Typ | BESCHREIBUNG |
|---|---|
| agile_ref-Strukturvorlage | Ein Typ, der einen agilen Verweis auf ein C++/WinRT-Objekt oder eine -Schnittstelle darstellt. |
| apartment_context-Struktur | Erfasst den Threadkontext innerhalb einer Coroutine, sodass er später wiederhergestellt werden kann. |
| array_view-Strukturvorlage | Eine Ansicht oder Spanne einer zusammenhängenden Reihe von Werten. |
| auto_revoke_t-Markerstruktur | Ein Markertyp, der verwendet wird, um einen Ereignis-Widerruf anzufordern, wenn ein Delegat registriert wird, um ein Ereignis zu behandeln. |
| Strukturvorlage für umhüllte Marker | Ein Markertyp, der verwendet wird, um anzugeben, dass eine implementierte Schnittstelle nicht von IInspectable::GetIids gemeldet werden soll. |
| clock-Struktur | Ein Typ, der statische Hilfsfunktionen zum Konvertieren von Windows::Foundation::D ateTime (d. h. std ::chrono::time_point) in und von winrt::file_time und in und von time_t enthält. |
| com-array-Strukturvorlage | Eine Ansicht oder Spanne einer zusammenhängenden Reihe von Werten zum Übergeben an und von Windows-Runtime-APIs. |
| com-ptr-Strukturvorlage | Eine referenzgezählte COM Smart Pointer-Vorlage. |
| Struktur des komponierbaren Markers | Ein Markertyp, der angibt, dass der Typ die innere Klasse einer composable-Klasse sein kann. |
| Erstellen von Markerstruktur | Ein Markertyp, der verwendet wird, um anzugeben, dass der Typ die äußere Klasse einer composable-Klasse ist. |
| deferrable_event_args | Ein Typ, den Sie verwenden können, um das zurücksetzbare Ereignismuster zu implementieren (zu erzeugen). |
| delegate-Strukturvorlage | Ein Typ, den Sie verwenden können, um einen benutzerdefinierten Delegattyp für Ihre eigenen Ereignisse zu deklarieren. |
| event-Strukturvorlage | Ein Typ, den Sie verwenden können, um ein Ereignis eines angegebenen Delegattyps zu deklarieren und zu implementieren. |
| event_revoker-Strukturvorlage | Wenn Sie einen Delegaten registrieren, können Sie einen Ereignis-Widerruf anfordern, mit dem Sie Ihren Delegat automatisch oder manuell widerrufen können. |
| event_token-Struktur | Ein Token, das beim Registrieren eines Delegaten für die Ereignisbehandlung bei einem Ereignis zurückgegeben wird; kann verwendet werden, um die Registrierung desselben Delegaten zu widerrufen. |
| file_handle-Struktur | Stellt ein Windows-Dateihandleobjekt dar. |
| fire_and_forget-Struktur | Verwenden Sie diesen Rückgabetyp, um Ihre Coroutine zu einer Feuer-und-Vergessen-Eigenschaft zu machen. |
| guid-Struktur | Stellt einen global eindeutigen Bezeichner (GUID) dar. |
| handle-Struktur | Stellt ein Windows-Handle-Objekt dar. |
| handle_type-Strukturvorlage | Die Vorlage für die Strukturen winrt::handle und winrt::file_handle . |
| hstring-Struktur | Eine sequenzielle Auflistung von UTF-16-Unicode-Zeichen, die eine Textzeichenfolge darstellen. |
| hresult_access_denied-Struktur | Ein von winrt::hresult_error abgeleiteter Typ, der einen E_ACCESSDENIED HRESULT-Fehlercode darstellt. |
| hresult_canceled-Struktur | Ein von winrt::hresult_error abgeleiteter Typ, der einen ERROR_CANCELLED HRESULT-Fehlercode darstellt. |
| hresult_changed_state-Struktur | Ein von winrt::hresult_error abgeleiteter Typ, der einen E_CHANGED_STATE HRESULT-Fehlercode darstellt. |
| hresult_class_not_available-Struktur | Ein von winrt::hresult_error abgeleiteter Typ, der einen CLASS_E_CLASSNOTAVAILABLE HRESULT-Fehlercode darstellt. |
| hresult_error-Struktur | Ein Typ, der einen HRESULT-Fehlercode darstellt. |
| hresult_illegal_delegate_assignment-Struktur | Ein von winrt::hresult_error abgeleiteter Typ, der einen E_ILLEGAL_DELEGATE_ASSIGNMENT HRESULT-Fehlercode darstellt. |
| hresult_illegal_method_call-Struktur | Ein von winrt::hresult_error abgeleiteter Typ, der einen E_ILLEGAL_METHOD_CALL HRESULT-Fehlercode darstellt. |
| hresult_illegal_state_change-Struktur | Ein von winrt::hresult_error abgeleiteter Typ, der einen E_ILLEGAL_STATE_CHANGE HRESULT-Fehlercode darstellt. |
| hresult_invalid_argument-Struktur | Ein von winrt::hresult_error abgeleiteter Typ, der einen E_INVALIDARG HRESULT-Fehlercode darstellt. |
| hresult_no_interface-Struktur | Ein von winrt::hresult_error abgeleiteter Typ, der einen E_NOINTERFACE HRESULT-Fehlercode darstellt. |
| hresult_not_implemented-Struktur | Ein von winrt::hresult_error abgeleiteter Typ, der einen E_NOTIMPL HRESULT-Fehlercode darstellt. |
| hresult_out_of_bounds-Struktur | Ein von winrt::hresult_error abgeleiteter Typ, der einen E_BOUNDS HRESULT-Fehlercode darstellt. |
| hresult_wrong_thread-Struktur | Ein von winrt::hresult_error abgeleiteter Typ, der einen RPC_E_WRONG_THREAD HRESULT-Fehlercode darstellt. |
| implements-Strukturvorlage | Eine Basisstrukturvorlage, die mindestens eine Windows-Runtime Schnittstellen im Namen eines abgeleiteten Typs implementiert. |
| map_base-Strukturvorlage | Eine Basisklasse, von der Sie ableiten können, die eine nicht beobachtbare assoziative Auflistung darstellt. |
| map_view_base-Strukturvorlage | Eine Basisklasse, von der Sie ableiten können, die eine Ansicht einer zusammenhängenden Sequenz von Elementen in einer assoziativen Auflistung darstellt. |
| no_module_lock Markerstruktur | Ein Markertyp, der verwendet wird, um anzugeben, dass Instanzen eines Typs nicht zur Modulobjektanzahl zählen. |
| no_weak_ref-Markerstruktur | Ein Markertyp, der verwendet wird, um die schwache Referenzunterstützung abzuwählen. |
| non_agile-Markerstruktur | Ein Markertyp, der angibt, dass Ihr Typ nicht agil ist und daher die IAgileObject-Schnittstelle nicht implementiert. |
| observable_map_base-Strukturvorlage | Eine Basisklasse, von der Sie ableiten können, die eine beobachtbare assoziative Auflistung darstellt. |
| observable_vector_base-Strukturvorlage | Eine Basisklasse, von der Sie ableiten können, die einen beobachtbaren Vektor darstellt. |
| static_lifetime-Markerstruktur | Ein Markertyp, der verwendet wird, um eine Aktivierungsfactory in statische Lebensdauer zu aktivieren. |
| vector_base-Strukturvorlage | Eine Basisklasse, von der Sie ableiten können, die eine nicht beobachtbare allgemeine Auflistung darstellt, die als Vektor bezeichnet wird. |
| view_vector_base-Strukturvorlage | Eine Basisklasse, von der Sie ableiten können, um Ihre eigene benutzerdefinierte Ansicht oder Spanne einer zusammenhängenden Sequenz von Elementen in einer universellen Auflistung zu implementieren. |
| weak_ref-Strukturvorlage | Ein Typ, der einen schwachen Verweis auf ein C++/WinRT-Objekt oder eine -Schnittstelle darstellt. |
| Windows::Foundation::IUnknown-Struktur | Jede C++/WinRT-Runtimeklasse (unabhängig davon, ob es sich um eine Windows- oder eine Laufzeitklasse eines Drittanbieters handelt) wird von winrt::Windows::Foundation::IUnknown abgeleitet. |
Funktionen im winrt-Namespace
| Funktion | BESCHREIBUNG |
|---|---|
| attach_abi-Funktion | Eine Hilfsfunktion, die ein C++/WinRT-Objekt an ein Handle oder an einen unformatierten Zeiger anfügt, der einen Verweis auf das Ziel besitzt. |
| box_value-Funktionsvorlage | Eine Funktionsvorlage, die einen Skalar- oder Arraywert in einem Verweisklassenobjekt umschließt (oder schachtelt), sodass er an eine Funktion übergeben werden kann, die IInspectable erwartet. |
| capture-Funktionsvorlage | Eine Funktionsvorlage, die eine angegebene Funktion oder Methode aufruft, den resultierenden Schnittstellenzeiger erfasst und als winrt::com_ptr zurückgibt. |
| check_bool-Funktionsvorlage | Eine Hilfsfunktion, die überprüft, ob ein Wert false ist, und bei Bedarf den Codewert des aufrufenden Threads mit dem letzten Fehler abruft und eine Ausnahme mithilfe eines C++/WinRT-Objekts auslöst, das diesen Fehlercode darstellt. |
| check_hresult-Funktion | Eine Hilfsfunktion, die überprüft, ob ein HRESULT-Code einen Fehler darstellt, und löst eine Ausnahme mithilfe eines C++/WinRT-Objekts aus, das den Fehlercode darstellt. |
| check_nt-Funktionsvorlage | Eine Hilfsfunktion, die überprüft, ob ein Code einen Fehler darstellt und, falls ja, den NT-status Wert des Fehlercodes einem HRESULT-Wert zuordnet und eine Ausnahme mithilfe eines C++/WinRT-Objekts auslöst, das den Fehlercode darstellt. |
| check_pointer-Funktionsvorlage | Eine Hilfsfunktion, die überprüft, ob ein Zeiger NULL ist, und bei Bedarf den Codewert des aufrufenden Threads mit dem letzten Fehler abruft und eine Ausnahme mithilfe eines C++/WinRT-Objekts auslöst, das diesen Fehlercode darstellt. |
| check_win32-Funktionsvorlage | Eine Hilfsfunktion, die überprüft, ob ein Code einen Fehler darstellt und, falls ja, den Systemfehlercode des Werts einem HRESULT-Wert zuordnet und eine Ausnahme mithilfe eines C++/WinRT-Objekts auslöst, das den Fehlercode darstellt. |
| copy_from_abi-Funktion | Eine Hilfsfunktion, die ein C++/WinRT-Objekt aus einem Handle oder aus einem unformatierten Zeiger in ein C++/WinRT-Objekt kopiert. |
| copy_to_abi-Funktion | Eine Hilfsfunktion, die in ein Handle oder einen Zeiger aus einem C++/WinRT-Objekt kopiert. |
| create_instance-Funktionsvorlage | Eine Funktionsvorlage, die ein einzelnes nicht initialisiertes Objekt der Klasse erstellt, die einer angegebenen CLSID zugeordnet ist, und gibt es als winrt::com_ptr zurück, oder löst es aus, wenn nicht erfolgreich. |
| detach_abi-Funktion | Eine Hilfsfunktion, die ein C++/WinRT-Objekt vom Handle, auf das verwiesen wird, oder von seiner Schnittstelle trennt, auf die verwiesen wird. |
| from_abi-Funktionsvorlage | Eine Hilfsfunktion, die bei einem Objekt eines projizierten Typs einen Zeiger auf die Implementierung abruft. |
| get_abi-Funktion | Eine Hilfsfunktion, die einen Zeiger auf die zugrunde liegende IUnknown-Schnittstelle eines C++/WinRT-Objekts abruft. |
| get_activation_factory-Funktionsvorlage | Eine Hilfsfunktion, die die Aktivierungsfactory für einen angegebenen Windows-Runtime Klassentyp abruft. |
| get_cancellation_token-Funktion | Verwenden Sie in einer Coroutine das von winrt::get_cancellation_token zurückgegebene Objekt, um den Abbruch abzufragen oder darauf zu reagieren. |
| get_class_nam-Funktion | Eine Hilfsfunktion, die eine Zeichenfolge mit dem vollqualifizierten Typnamen einer angegebenen Windows-Runtime-Klasse abruft. |
| get_interfaces-Funktion | Eine Hilfsfunktion, die ein Array mit den Bezeichnern der Schnittstellen abruft, die von einem C++/WinRT-Objekt implementiert werden. |
| get_progress_token-Funktion | Verwenden Sie in einer Coroutine das von winrt::get_progress_token zurückgegebene Objekt, um den Fortschritt an einen Fortschrittshandler zurück zu melden. |
| get_self-Funktionsvorlage | Eine Hilfsfunktion, die bei einem Objekt eines projizierten Typs einen Zeiger auf die Implementierung abruft. |
| get_trust_level-Funktion | Eine Hilfsfunktion, die die Vertrauensebene eines C++/WinRT-Objekts abruft. |
| get_unknown-Funktion | Eine Hilfsfunktion, die die Adresse der zugrunde liegenden unformatierten IUnknown-Schnittstelle eines Objekts eines projizierten Typs zurückgibt. |
| guid_of-Funktionsvorlage | Eine Hilfsfunktionsvorlage, die die GUID einer Laufzeitklasse, Coklasse oder Schnittstelle abruft. |
| is_guid_of-Funktionsvorlage | Eine Hilfsfunktionsvorlage, die bestimmt, ob es sich bei der bereitgestellten GUID um eine der angegebenen Laufzeitklassen, Coklassen oder Schnittstellen handelt. |
| make-Funktionsvorlage | Eine Factorymethode, die eine instance eines projizierten Typs oder einer Schnittstelle zurückgibt, wenn sie mit dem entsprechenden Implementierungstyp parametrisiert wird. |
| make_agile-Funktionsvorlage | Eine Hilfsfunktion, die ein agile_ref-Objekt zurückgibt, das einen agilen Verweis auf ein C++/WinRT-Objekt oder eine -Schnittstelle darstellt. |
| make_self-Funktionsvorlage | Eine Factorymethode, die eine com_ptr an eine instance des Implementierungstyps für eine Laufzeitklasse zurückgibt. |
| make_weak-Funktionsvorlage | Eine Hilfsfunktion, die ein weak_ref-Objekt zurückgibt, das einen schwachen Verweis auf ein C++/WinRT-Objekt oder eine -Schnittstelle darstellt. |
| name_of-Funktionsvorlage | Eine Hilfsfunktion, die eine Zeichenfolgenansicht mit dem vollqualifizierten Typnamen einer bestimmten Windows-Runtime-Klasse abruft. |
| put_abi-Funktion | Eine Hilfsfunktion, die die Adresse des zugrunde liegenden IUnknown-Schnittstellenzeigers eines C++/WinRT-Objekts abruft, sodass er auf einen anderen Wert festgelegt werden kann. |
| resume_after-Function | Eine Hilfsfunktion, die die Steuerung an den Aufrufer zurückgibt und die Ausführung in einem Threadpoolthread nach einer Verzögerung wieder fortsetzt. |
| resume_background-Funktion | Eine Hilfsfunktion, die die Steuerung an den Aufrufer zurückgibt und die Ausführung in einem Threadpoolthread fortgesetzt. |
| resume_foreground-Funktion | Eine Hilfsfunktion zur Verwendung in einer Coroutine, mit der Sie die Ausführung zu einem bestimmten Vordergrundthread wechseln können co_await . |
| resume_on_signal | Eine Funktion, die Sie verwenden können, bis ein Kernelereignis signalisiert wird. |
| single_threaded_map-Funktionsvorlage | Eine Funktionsvorlage, die ein Objekt eines Typs erstellt und zurückgibt, das eine nicht beobachtbare assoziative Auflistung (Map) implementiert. Das Objekt wird als IMap zurückgegeben. |
| single_threaded_observable_map-Funktionsvorlage | Eine Funktionsvorlage, die ein Objekt eines Typs erstellt und zurückgibt, das eine beobachtbare assoziative Auflistung (Map) implementiert. Das Objekt wird als IObservableMap zurückgegeben. |
| single_threaded_observable_vector-Funktionsvorlage | Eine Funktionsvorlage, die ein Objekt eines Typs erstellt und zurückgibt, das eine beobachtbare Auflistung implementiert. Das Objekt wird als IObservableVector zurückgegeben. |
| single_threaded_vector-Funktionsvorlage | Eine Funktionsvorlage, die ein Objekt eines Typs erstellt und zurückgibt, das eine universelle Auflistung implementiert. Das Objekt wird als IVector zurückgegeben. |
| swap-Funktion | Eine Hilfsfunktion, die den Inhalt von zwei Werten austauscht. |
| throw_hresult-Funktion | Eine Hilfsfunktion, die einen HRESULT-Fehlercode akzeptiert und eine Ausnahme mithilfe eines C++/WinRT-Objekts auslöst, das diesen Fehlercode darstellt. |
| throw_last_error-Funktion | Eine Hilfsfunktion, die den Codewert des aufrufenden Threads mit dem letzten Fehler abruft und eine Ausnahme mithilfe eines C++/WinRT-Objekts auslöst, das diesen Fehlercode darstellt. |
| to_hresult-Funktion | Eine Hilfsfunktion zur Verwendung in einem Catch-Block, die die zuletzt ausgelöste Ausnahme in einen HRESULT-Fehlercode verwandelt. |
| to_hstring-Funktion | Eine Hilfsfunktion, die einen Eingabewert in einen winrt::hstring konvertiert, der die Zeichenfolgendarstellung des Werts enthält. |
| to_string-Funktion | Eine Hilfsfunktion, die eine breite Eingabezeichenfolge in eine std::string konvertiert, die eine schmale UTF-8-Zeichenfolge enthält. |
| try_capture-Funktionsvorlage | Eine Funktionsvorlage, die eine angegebene Funktion oder Methode aufruft, erfasst den Schnittstellenzeiger, der von der Funktion oder Methode ausgegeben wird, und gibt ihn als winrt::com_ptr oder als leere com_ptr zurück, wenn dies nicht erfolgreich ist. |
| try_create_instance-Funktionsvorlage | Eine Funktionsvorlage, die ein einzelnes nicht initialisiertes Objekt der Klasse erstellt, die einer angegebenen CLSID zugeordnet ist, und gibt es als winrt::com_ptr oder als leere com_ptr zurück, wenn dies nicht erfolgreich ist. |
| try_get_activation_factory-Funktionsvorlage | Eine Hilfsfunktion, die die Aktivierungsfactory für einen angegebenen Windows-Runtime Klassentyp oder eine leere com_ptr abruft, wenn dies nicht erfolgreich ist. |
| unbox_value-Funktionsvorlage | Eine Funktionsvorlage, die einen Skalar- oder Arraywert innerhalb eines Verweisklassenobjekts entpackt (oder auspackt), sodass er in einer Funktion verarbeitet werden kann, die IInspectable erwartet. |
| unbox_value_or-Funktionsvorlage | Eine Funktionsvorlage, die einen Skalarwert innerhalb eines Verweisklassenobjekts mit einem Fallbackwert entpackt (oder entpackt), sodass er in einer Funktion verarbeitet werden kann, die IInspectable erwartet. |
| xaml_typename-Funktionsvorlage | Eine Hilfsfunktion, die den Typnamen eines Windows-Runtime Typs in Form eines Windows::UI::Xaml::Interop::TypeName-Objekts zurückgibt. |
C++/WinRT-Funktionen, die Windows-Runtime-APIs erweitern
Erweiterungsfunktionen sind für die C++/WinRT-Projektionstypen für bestimmte Windows-Runtime APIs vorhanden. Beispielsweise ist winrt::Windows::Foundation::IAsyncAction der C++/WinRT-Projektionstyp für IAsyncAction. Die Erweiterungsfunktionen sind nicht Teil der ABI-Oberfläche (Application Binary Interface) der tatsächlichen Windows-Runtime-Typen, sodass sie nicht als Member der Windows-Runtime-APIs aufgeführt werden. Sie können sie jedoch innerhalb eines beliebigen C++/WinRT-Projekts aufrufen.
| WinRT-API | Funktionen | BESCHREIBUNG |
|---|---|---|
| IAsyncAction | get, wait_for | Weitere Informationen finden Sie unter IAsyncAction C++/WinRT-Erweiterungsfunktionen. |
| IAsyncActionWithProgress | get, wait_for | Siehe IAsyncActionWithProgress C++/WinRT-Erweiterungsfunktionen |
| IAsyncOperation | get, wait_for | Weitere Informationen finden Sie unter IAsyncOperation C++/WinRT-Erweiterungsfunktionen. |
| IAsyncOperationWithProgress | get, wait_for | Siehe IAsyncOperationWithProgress C++/WinRT-Erweiterungsfunktionen |
| IBindableIterable | Anfang, Ende | Siehe IBindableIterable C++/WinRT-Erweiterungsfunktionen |
| IBindableIterator | begin, end, operator++, operator++(int), operator* | Weitere Informationen finden Sie unter C++/WinRT-Erweiterungsfunktionen für IBindableIterator. |
| IBuffer | data | Weitere Informationen finden Sie unter IBuffer-C++/WinRT-Erweiterungsfunktionen. |
| IIterable | Anfang, Ende | Weitere Informationen finden Sie unter IIterable C++/WinRT-Erweiterungsfunktionen. |
| IIterator | operator++, operator++(int), operator* | Weitere Informationen finden Sie unter C++/WinRT-Erweiterungsfunktionen für IIterator. |
| IKeyValuePair | Operator. | Siehe IKeyValuePair C++/WinRT-Erweiterungsfunktionen |
| Imap | begin, end, TryLookup, TryRemove | Siehe IMap-C++/WinRT-Erweiterungsfunktionen |
| IMapView | begin, end, TryLookup | Weitere Informationen finden Sie unter C++/WinRT-Erweiterungsfunktionen für IMapView. |
| IMemoryBufferReference | data | Siehe IMemoryBufferReference C++/WinRT-Erweiterungsfunktionen |
| IVector | Anfang, Ende | Weitere Informationen finden Sie unter IVector C++/WinRT-Erweiterungsfunktionen. |
| IVectorView | Anfang, Ende | Siehe IVectorView C++/WinRT-Erweiterungsfunktionen |
Andere Funktionen
| Funktion | BESCHREIBUNG |
|---|---|
| GetRuntimeClassName-Funktion | Eine Memberfunktion (eines generierten Implementierungstyps), die eine Zeichenfolge zurückgibt, die den vollqualifizierten Typnamen der implementierten Windows-Runtime Klasse enthält. |