Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Du behöver inte skriva om din WPF-, Windows Forms- eller Win32-app för att dra nytta av moderna Windows funktioner. Den Windows App SDK och den bredare Windows-plattformen erbjuder modulära funktioner som du kan använda stegvis, i din egen takt.
I den här artikeln beskrivs tre oberoende moderniseringsmetoder – anropa api:er för Windows Runtime (WinRT), lägga till Windows App SDK och använda MSIX-paketering – så att du kan bestämma vilka funktioner som ska läggas till och var du ska börja baserat på appens ramverk.
Migrering av användargränssnittsramverk till WinUI 3
Om målet är att helt modernisera appens användargränssnittslager rekommenderar vi att du migrerar till WinUI 3 – det interna användargränssnittsramverket för Windows skrivbordsappar. Se Skapa din första WinUI 3-app för att komma igång.
Om du vill lägga till Windows funktioner i ditt befintliga appramverk (WPF, Windows Forms eller C++ Win32) utan att ändra användargränssnittsskiktet använder du någon av de moderniseringsmetoder som beskrivs i den här artikeln.
Note
Den här artikeln beskriver hur du lägger till moderna Windows funktioner i din befintliga skrivbordsapp. Om du vill modernisera din .NET verktygskedja eller C++-kompilator kan du läsa GitHub Copilot modernisering för .NET eller Microsoft portnings- och uppgraderingsguiden för C++.
Moderniseringsmetoder
De tre moderniseringsmetoderna är oberoende. Du kan använda en, två eller alla tre i samma app.
| Tillvägagångssätt | Vad det ger dig | Kräver förpackning? |
|---|---|---|
| WinRT-API:er | Direkt åtkomst till Windows plattforms-API:er (meddelanden, Bluetooth, delningskontrakt, sensorer med mera) från valfri .NET- eller C++-skrivbordsapp | Nej, för de flesta API:er |
| SDK för Windows-appar | Ett NuGet-paket som ger moderna Windows utvecklingsfunktioner (fönster, textrendering, resurser med mera) till befintliga appar | Nej, för de flesta funktioner |
| MSIX-paketering | Ett modernt installationsprogram med ren avinstallation, automatiska uppdateringar och paketidentitet. kräver inga ändringar i källkoden | N/A — förpackning är tillvägagångssättet |
Tips/Råd
Börja med WinRT-API:er om du vill anropa ett specifikt Windows plattforms-API. Lägg till Windows App SDK när du behöver dess funktioner (DWriteCore, MRT Core, fönster). Lägg till MSIX-paketering när du behöver paketidentitet eller vill modernisera installationsprogrammet.
WinRT-API:er
Windows Runtime (WinRT) API:er exponerar Windows plattformsfunktioner som appmeddelanden, delningskontraktet, Bluetooth med mera. Du kan anropa dessa API:er direkt från WPF-, Windows Forms- och C++ Win32-appar.
Windows App SDK
Windows App SDK levererar moderna Windows utvecklingsfunktioner som ett NuGet-paket som du lägger till i ditt befintliga projekt. Du behöver inte ändra ditt gränssnittsramverk.
MSIX-paketering och paketidentitet
MSIX-paketering ersätter ditt befintliga installationsprogram och ger din apppaketidentitet. Vissa Windows funktioner – inklusive bakgrundsaktiviteter, startuppgifter, filassociationer och Windows AI Foundry – kräver paketidentitet vid körning. Om du vill behålla ditt befintliga installationsprogram kan du fortfarande bevilja paketidentitet utan fullständig MSIX-paketering – en metod som ibland kallas paketering med extern plats eller ett glest paket.
- Paketeringsöversikt
- funktioner som kräver paketidentitet
- Bevilja identitet till en icke-paketerad app
- Integrera din skrivbordsapp med Windows med hjälp av paketeringstillägg
- Paketera din app med MSIX i ett enda projekt
Ramverksspecifika startpunkter
I följande tabell visas den rekommenderade startpunkten för varje skrivbordsappsramverk.
| Ditt ramverk | Rekommenderad utgångspunkt |
|---|---|
| WPF | Använda Windows App SDK i ett befintligt projekt |
| Windows-formulär | Använda Windows App SDK i ett befintligt projekt |
| C++ Win32 | Använda Windows App SDK i ett befintligt projekt |
| C++/WinRT | WinRT-API:er för skrivbordsappar |
Funktionskatalog för modernisering av skrivbordsappar
I följande tabeller visas vanliga moderniseringsfunktioner och om var och en kräver Windows App SDK eller paketidentitet.
AI
| Feature | Windows App SDK krävs? | Krävs paketidentitet? |
|---|---|---|
| Windows AI Foundry | No | Yes |
Användargränssnitt och text
| Feature | Windows App SDK krävs? | Krävs paketidentitet? |
|---|---|---|
| WinUI 3-komponenter i en skrivbordsapp | Yes | No |
| Rendera text med DWriteCore | Yes | No |
| Tillämpa Mica eller Acrylic på Win32-appar | No | No |
| Använd rundade hörn | No | No |
| Använd Windows-teman | No | No |
Appens livscykel
| Feature | Windows App SDK krävs? | Krävs paketidentitet? |
|---|---|---|
| Bakgrundsaktiviteter (Windows App SDK) | Yes | Yes |
| Startuppgifter | No | Yes |
Windows-integration
| Feature | Windows App SDK krävs? | Krävs paketidentitet? |
|---|---|---|
| Delningsbladsintegrering | No | No |
| API för personer mellan enheter | No | No |
| Filkopplingar | No | Yes |
| Windows widgetar | No | Yes |
Security
| Feature | Windows App SDK krävs? | Krävs paketidentitet? |
|---|---|---|
| skåp för autentiseringsuppgifter | No | No |
| OAuth 2.0 | No | No |
| Biometri med fingeravtryck | No | No |
| Smartkort | No | No |
| Kryptografi | No | No |
Resources
| Feature | Windows App SDK krävs? | Krävs paketidentitet? |
|---|---|---|
| MRT Core-resurshantering | Yes | No |
En fullständig lista över plattformsfunktioner som är tillgängliga i skrivbordsappar finns i Windows översikt över appplattformen.
AI-assisterad modernisering
GitHub Copilot-moderniseringsagenten kan analysera din skrivbordslösning och generera pull-begäranden som lägger till moderna Windows funktioner eller uppgraderar din app till en nyare .NET version. Mer information finns i AI-assisterad modernisering.
Relaterat innehåll
Windows developer