Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Se disponi di un'app Windows esistente, ovvero un progetto UWP, un'app desktop macchine virtuali Windows o WinForms o un'app multipiattaforma Electron o Flutter, GitHub Copilot può velocizzare significativamente il processo di aggiornamento per i Windows moderni. Questo articolo illustra gli scenari principali e gli strumenti che li rendono pratici.
Prima di iniziare
Assicurarsi di disporre degli strumenti chiave configurati:
- GitHub Copilot con il plug-in di sviluppo WinUI 3: gestisce le linee guida per la migrazione delle API e genera codice moderno corretto
- Microsoft Learn MCP Server: consente Copilot l'accesso alla documentazione corrente SDK per app di Windows
- winapp CLI — aggiunge identità del pacchetto e packaging per Windows a qualsiasi framework
Se non sono ancora state configurate, iniziare con Impostare GitHub Copilot per lo sviluppo Windows.
Eseguire la migrazione di un'app UWP a WinUI 3
WinUI 3 è il successore moderno del livello dell'interfaccia utente della piattaforma UWP. Le API sono simili ma non identiche. Gli spazi dei nomi sono stati spostati, alcuni controlli sono stati modificati e il modello di app è diverso. La guida sulla migrazione a WinUI 3 rende questo gestibile.
Eseguire la guida alla migrazione
In Copilot Chat, esegui la funzione di guida di migrazione:
/winui3-development:winui3-migration-guide
Ciò produce un piano di migrazione strutturato personalizzato per il progetto, tra cui:
- Elenco di controllo delle modifiche al file di progetto e al manifesto
- Tabella dei mapping dello spazio dei nomi api (ad esempio,
Windows.UI.Xaml→Microsoft.UI.Xaml) - Sostituzioni di controlli comuni e esempi di codice prima/dopo
- Differenze di creazione di pacchetti e distribuzione
Eseguire la migrazione di un file
Aprire un file di origine UWP e chiedere Copilot di eseguirne la migrazione:
"Eseguire la migrazione di questo file da UWP a WinUI 3. Sostituire tutte le API UWP deprecate con gli equivalenti WinUI 3. Contrassegna tutto ciò che richiede una revisione manuale."
Le istruzioni personalizzate del plug-in WinUI 3 guidano Copilot ad effettuare sostituzioni corrette. Quelli comuni includono:
| UWP (Piattaforma Universale Windows) | WinUI 3 |
|---|---|
Windows.UI.Xaml.* |
Microsoft.UI.Xaml.* |
CoreDispatcher / RunAsync |
DispatcherQueue / TryEnqueue |
MessageDialog |
ContentDialog (con XamlRoot) |
Windows.UI.Popups |
Microsoft.UI.Xaml.Controls |
BackgroundTaskBuilder |
API SDK per app di Windows per attività in background |
Cosa Copilot può e non può fare automaticamente
Copilot gestisce bene la maggior parte delle rimappature degli spazi dei nomi e le semplici sostituzioni API. Ci sono aree che necessitano di revisione umana:
-
App modifiche al modello — gli eventi del ciclo di vita UWP (
Suspending,Resuming) non vengono mappati direttamente a WinUI 3; Copilot può suggerire alternative, ma è necessario verificare il comportamento - Dizionari risorse XAML : le risorse del tema e gli stili personalizzati potrebbero richiedere una regolazione manuale
- Attività in background — il modello di creazione dei pacchetti è differente; utilizzare Winapp CLI per configurare le nuove voci del manifesto.
Modernizzare un'app macchine virtuali Windows o WinForms
È consigliabile eseguire l'aggiornamento o la ricompilazione con WinUI 3?
Prima di iniziare, vale la pena decidere quale direzione ha senso per la tua app. Esistono alcuni percorsi distinti con strumenti e ambiti diversi.
| La tua situazione | Percorso consigliato |
|---|---|
| Mantenere macchine virtuali Windows o WinForm come framework dell'interfaccia utente, passare a .NET 9+ | Upgrade sul posto: usare l'agente di modernizzazione GitHub Copilot per .NET per automatizzare il file di progetto e la modifica al codice |
| Aggiungere funzionalità di Windows moderne (notifiche, intelligenza artificiale, integrazione della shell) all'app esistente senza modificare il framework dell'interfaccia utente | Aggiungi funzionalità di SDK per app di Windows: vedere gli scenari seguenti. Usare l'interfaccia della riga di comando di Winapp per aggiungere l'identità del pacchetto, se necessario |
| Hai bisogno di un'interfaccia utente Fluent moderna, del supporto al tocco, della profondità di WinRT o di una nuova base di codice. | Ricostruisci con WinUI 3 — vedi modelli macchine virtuali Windows in WinUI 3 per la mappatura delle API; per un approccio assistito da Copilot vedi Migrare un'app UWP a WinUI 3 (specifica per UWP, ma il flusso di lavoro Copilot è simile) |
| App LOB con controlli dell'interfaccia utente WCF, COM o pesanti di terze parti | Eseguire prima l'upgrade, quindi modernizzare in modo incrementale — l'agente di modernizzazione GitHub Copilot per .NET può assistere con gli aggiornamenti da WCF a CoreWCF, EF e ASP.NET Core |
Annotazioni
"Aggiornamento" (passaggio a una versione più recente .NET nello stesso framework dell'interfaccia utente) e "ricompilazione" (passaggio a WinUI 3) sono decisioni separate. È possibile eseguire ora l'aggiornamento e la ricostruzione in un secondo momento, oppure eseguire entrambe le operazioni insieme per una nuova implementazione. La modernizzazione GitHub Copilot per .NET illustra il percorso di aggiornamento. Le sezioni seguenti illustrano l'aggiunta di funzionalità SDK per app di Windows all'app esistente.
macchine virtuali Windows e le app WinForms possono adottare funzionalità SDK per app di Windows senza una riscrittura completa. Copilot + Learn MCP Server semplifica la ricerca e l'integrazione di funzionalità specifiche.
Aggiungere notifiche push
Ho un'app macchine virtuali Windows destinata a .NET 8. Mostra come aggiungere notifiche push Windows usando il SDK per app di Windows. L'app non è attualmente inserita in un pacchetto."
Con Learn MCP Server, Copilot recupera la documentazione di notifica SDK per app di Windows corrente e genera codice di integrazione. Il supporto di base per le notifiche push funziona per le app non in pacchetto. Tuttavia, se l'app deve ricevere notifiche push mentre non è in esecuzione, lo scenario di produzione più comune, l'attivazione COM e il recapito in background richiedono l'identità del pacchetto. Copilot può guidarti nel processo di aggiungere pacchetti con la CLI di winapp, se necessario.
Modernizzare l'aspetto dell'app
"La mia app macchine virtuali Windows sembra datata. Rendilo moderno con un'opzione modalità scura e una barra laterale di navigazione come usano le app moderne di Windows.
Aggiungere un selettore di file usando SDK per app di Windows
"Sostituire l'utilizzo di OpenFileDialog macchine virtuali Windows con l'SDK per app di Windows StorageFilePicker per un'esperienza di Windows moderna."
Aggiungere notifiche Windows
"Aggiungi una notifica che indica all'utente quando viene completata un'attività in background".
Copilot fornirà il codice di notifica SDK per app di Windows. Le notifiche delle app funzionano sia nelle app in pacchetto che in app non in pacchetto . Non è necessaria alcuna identità del pacchetto.
Chiedi a Copilot di guidarti.
Voglio che la mia app mostri una notifica toast di Windows. Spiegare cosa devo configurare per primo."
Aggiungere funzionalità di Windows a un'applicazione multipiattaforma
Le app Electron, Flutter, React Native e Rust possono diventare tutti cittadini di prima classe Windows con winapp cli. Copilot consente di adattare il codice per le API di Windows dopo aver creato l'identità del pacchetto.
Elettrone
npm install @microsoft/winappcli --save-dev
npx winapp init
npx winapp node create-addon --feature notifications
Dopo aver eseguito lo scaffolding del componente aggiuntivo, chiedere a Copilot di integrarlo:
Ho creato tramite scaffolding un componente aggiuntivo di notifiche Windows per la mia app Electron usando winapp CLI. Mostrami come inviare una notifica dal processo principale al termine di un download."
Per una procedura dettagliata completa, vedere la guida alla configurazione di Electron.
Flutter
winapp init
"Ho un'app Flutter per Windows. Mostrami come usare il SDK per app di Windows per aggiungere un'icona della barra delle applicazioni con un menu di scelta rapida."
Consultare la guida Flutter per la configurazione specifica di Windows.
macchine virtuali Windows/.NET
Ho un'app macchine virtuali Windows. Illustra come usare l'interfaccia della riga di comando di Winapp per aggiungere pacchetti MSIX e quindi aggiungere una funzionalità di intelligenza artificiale su dispositivo usando le API di intelligenza artificiale Windows."
Vedere la guida .NET.
Che cosa viene sbloccato dall'identità del pacchetto
Molte potenti funzionalità di Windows richiedono package identity, che può essere aggiunta a qualsiasi framework. Dopo averlo ottenuto, Copilot può aiutarti a usare:
| Feature | Cosa chiedere Copilot |
|---|---|
| Notifiche delle app | "Aggiungere una notifica di Windows quando il mio progetto in background è completato" |
| Intelligenza artificiale sul dispositivo (Phi Silica, riconoscimento del testo) | "Aggiungere riepiloghi di testo di intelligenza artificiale locali usando Windows API di intelligenza artificiale" |
| integrazione della shell Windows (foglio di condivisione, barra delle applicazioni) | "Aggiungere una destinazione di condivisione in modo che gli utenti possano condividere l'app da Explorer" |
| Attività in background | "Eseguire un'attività in background ogni ora anche quando l'app viene chiusa" |
| Associazioni di tipi di file | "Registrare la mia app per aprire i file .notes" |
Passaggi successivi
- Utentica intelligenza artificiale per lo sviluppo di Windows: dettagli completi sul plug-in WinUI 3 e Learn MCP Server
- Interfaccia della riga di comando app di Windows Development CLI (winapp CLI) — guida completa per aggiungere funzionalità di Windows a qualsiasi framework
- SDK per app di Windows documentazione
- Windows API di intelligenza artificiale : funzionalità di intelligenza artificiale sul dispositivo disponibili dopo aver creato l'identità del pacchetto