Share via


Zuordnen von UWP-Features zum Windows App SDK

In diesem Thema werden wichtige Featurebereiche in den verschiedenen Formen verglichen, in denen sie in UWP und im Windows App SDK angezeigt werden. Der Inhalt dieses Migrationsleitfadens unterstützt den Wechsel von UWP XAML zu Windows App SDK XAML. Der Wechsel zu einem anderen UI-Framework wie Windows Presentation Foundation (WPF) liegt außerhalb des Anwendungsbereichs dieses Leitfadens.

Funktion UWP Windows App SDK (gepackte Anwendungen) Migrationshinweise
Verpackung MSIX
App hat Identität
MSIX
App hat Identität
UWP-Apps, die auf das Windows App SDK migrieren, sollten auf MSIX bleiben, um eine vertrauenswürdige, saubere Installation und Deinstallation sowie den Zugriff auf alle APIs zu gewährleisten, einschließlich derer, die eine Identität erfordern.
Container App-Container:
- security = LowIL
– der Zugriff auf das Dateisystem wird vermittelt
– kein Zugriff auf die Registry
MSIX-Container:
– Sicherheit = MediumIL
– Zugriff auf das Dateisystem wie der Benutzer, AppData schreibt virtualisiert
– HKCU-Registrierung wird virtualisiert
Der Wechsel zu einer höheren Integritätsstufe mit dem Windows App SDK ermöglicht Ihrer Anwendung eine größere Funktionalität. Achten Sie jedoch auf die Virtualisierung, wenn Sie die Möglichkeiten Ihrer migrierten Anwendung erweitern möchten, um in HKCU oder AppData zu schreiben.
Aktivierung und Instanzerstellung Paket-Identität + CoreApplication-Aktivierung, standardmäßig einzeln installiert Paketidentität, Main/WinMain + Windows App SDK-Aktivierung, standardmäßig mehrstufig Stellen Sie sicher, dass Ihre Anwendung mit mehreren Instanzen umgehen kann, oder verwenden Sie AppInstance zur Verwaltung Ihrer Instanzen.
Lebenszyklus-verwaltet Aussetzen/Wiederaufnahme Benachrichtigungen zu Energieversorgung/Zustand Sie können Benachrichtigungen über Energie-/Statusänderungen verwenden, um die Systembelastung zu verringern.
Hintergrundaufgaben InProc- und OOP-Hintergrundaufgaben Inproc COM und OOP Hintergrundaufgaben Sie können Ihre OOP-Hintergrundaufgaben weiter verwenden. Wenn die Anwendung eine Kommunikation mit Ihrem Hauptprozess erfordert, dann evaluieren Sie Ihren IPC-Mechanismus, da die OOP-Hintergrundaufgabe in LowIL läuft und Ihr Windows App SDK-Hauptprozess in MediumIL läuft.

Alle inproc-Hintergrundaufgaben müssen in COM-Hintergrundaufgaben migriert werden - siehe Erstellen und Registrieren einer winmain COM-Hintergrundaufgabe.

Für C# OOP-Hintergrundaufgaben, siehe Author Windows Runtime components with C#/WinRT und das Background task sample.
Windowing CoreWindow, AppWindow (Vorschau) HWND, AppWindow v2 Das Fensterverhalten hat sich im Windows App SDK erheblich geändert. Siehe Migration der Fensterfunktionalität.
Nachrichten CoreDispatcher und DispatcherQueue DispatcherQueue, WndProc DispatcherQueue unterstützt Win32-Anwendungen. Weitere Details zur Umstellung von CoreDispatcher auf DispatcherQueue finden Sie unter Migration der Threading-Funktionalität.
UI-Plattform System XAML, WebView, DirectX und andere WinUI 3, Webview2, DirectX und andere Weitere Informationen finden Sie unter Migration der Windows UI Library (WinUI).
Text-Rendering DirectWrite DWriteCore Ermöglicht Anwendungen den Zugriff auf die neuesten DWrite-Funktionen und den Empfang neuer DWrite-Updates unabhängig vom Betriebssystem-Releaseplan. Weitere Informationen finden Sie unter DirectWrite zu DWriteCore Migration.
Ressourcen MRT MRTCore Weitere Informationen finden Sie unter MRT to MRTCore migration.
.NET Runtime .NET Nativ/C# 7 .NET 6+/C# 9 Das Windows App SDK bietet Zugang zur modernen .NET-Laufzeitumgebung und zu neuen Sprachfunktionen. Die .NET ReadyToRun-Kompilierung ist jedoch nicht mit der .NET Native-Kompilierung identisch, so dass Sie die Leistungseinbußen abwägen sollten.
2D Graphics Win2D Win2D für WinUI 3 Wir arbeiten derzeit an einer Version von Win2D, die mit dem Windows App SDK zusammenarbeitet (in Arbeit). Weitere Informationen finden Sie in der Dokumentation.
Komponenten für Windows-Runtime Windows-Laufzeitkomponenten-Projektvorlagen für UWP - C++: Verwenden Sie die Projektvorlage Windows Runtime Component (WinUI 3) .
- C#: Verwenden Sie C#/WinRT, um Windows-Laufzeitkomponenten in einer .NET-Klassenbibliothek zu erstellen.
Wir arbeiten derzeit an der Unterstützung für Author Windows Runtime Components mit C#/WinRT für die Verwendung im Windows App SDK und WinUI 3.