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.
Quando non si esegue il debug, la Gestione del ciclo di vita dei processi (PLM) di Windows controlla lo stato di esecuzione dell'app—avviando, sospendendo, riprendendo e terminando l'app in risposta alle azioni dell'utente e allo stato del dispositivo. Quando si esegue il debug, Windows disabilita questi eventi di attivazione. In questo argomento viene descritto come generare questi eventi nel debugger.
Questo argomento descrive anche come eseguire il debug delle attività in background. Le attività in background consentono di eseguire determinate operazioni in un processo in background, anche quando l'app non è in esecuzione. È possibile usare il debugger per mettere l'app in modalità di debug e quindi, senza avviare l'interfaccia utente, avviare ed eseguire il debug dell'attività in background.
Per altre informazioni sulla gestione della durata dei processi e sulle attività in background, vedere Avvio, ripresa e multitasking.
Attivare gli eventi di gestione della durata del ciclo di vita dei processi
Windows può sospendere l'app quando l'utente passa da esso o quando Windows entra in uno stato a basso consumo. È possibile rispondere all'evento Suspending
per salvare i dati dell'app e dell'utente pertinenti nell'archiviazione permanente e rilasciare le risorse. Quando un'app viene ripresa dallo stato Sospeso , passa allo stato In esecuzione e continua da dove era quando è stata sospesa. È possibile rispondere all'evento per ripristinare o aggiornare lo stato dell'applicazione Resuming
e recuperare le risorse.
Anche se Windows tenta di mantenere il maggior numero possibile di app sospese in memoria, Windows può terminare l'app se non sono presenti risorse sufficienti per mantenerle in memoria. Un utente può anche chiudere in modo esplicito l'app. Non esiste alcun evento speciale per indicare che l'utente ha chiuso un'app.
Nel debugger di Visual Studio è possibile sospendere, riprendere e terminare manualmente le app per eseguire il debug degli eventi del ciclo di vita del processo. Per eseguire il debug di un evento del ciclo di vita del processo:
Impostare un punto di interruzione nel gestore dell'evento di cui si vuole eseguire il debug.
Premere F5 per avviare il debug.
Sulla barra degli strumenti Percorso di debug scegliere l'evento da attivare:
Sospendere e terminare chiude l'app e termina la sessione di debug.
Attivare attività in background
Qualsiasi app può registrare un'attività in background per rispondere a determinati eventi di sistema, anche quando l'app non è in esecuzione. Le attività in background non possono eseguire codice che aggiorna direttamente l'interfaccia utente; mostrano invece informazioni all'utente con aggiornamenti del riquadro, aggiornamenti del badge e notifiche toast. Per altre informazioni, vedere Supporto dell'app con attività in background.
È possibile attivare gli eventi che avviano le attività in background per l'app dal debugger.
Annotazioni
Il debugger può attivare solo gli eventi che non contengono dati, ad esempio eventi che indicano una modifica dello stato nel dispositivo. È necessario attivare manualmente le attività in background che richiedono l'input dell'utente o altri dati.
Il modo più realistico per attivare un evento di attività in background è quando l'app non è in esecuzione. Tuttavia, anche l'attivazione dell'evento in una sessione di debug standard è supportata.
Attivare un evento di attività in background da una sessione di debug standard
Impostare un punto di interruzione nel codice dell'attività in background di cui si vuole eseguire il debug.
Premere F5 per avviare il debug.
Dall'elenco degli eventi sulla barra degli strumenti Percorso di debug scegliere l'attività in background che si desidera avviare.
Attivare un'attività in background quando l'app non è in esecuzione
Impostare un punto di interruzione nel codice dell'attività in background di cui si vuole eseguire il debug.
Aprire la pagina delle proprietà di debug per il progetto di avvio. In Esplora soluzioni selezionare il progetto . Scegliere Proprietà dal menu Debug.
Per i progetti C++, espandere Proprietà di configurazione e quindi scegliere Debug.
Esegui una delle operazioni seguenti:
Per i progetti Visual C# e Visual Basic, scegliere Non avviare, ma eseguire il debug del codice all'avvio
Per i progetti C++, scegliere No dall'elenco Avvia applicazione .
Premere F5 per inserire l'app in modalità di debug. Si noti che l'elenco Processo sulla barra degli strumenti Percorso di debug visualizza il nome del pacchetto dell'app per indicare che si è in modalità di debug.
Dall'elenco degli eventi sulla barra degli strumenti Percorso di debug scegliere l'attività in background che si desidera avviare.
Attivare eventi di gestione della durata dei processi e attività in background da un'app installata
Usare la finestra di dialogo Debug pacchetto app installato per caricare un'app già installata nel debugger. Ad esempio, potresti eseguire il debug di un'app installata da Microsoft Store o di eseguire il debug di un'app quando hai i file di origine per l'app, ma non un progetto di Visual Studio per l'app. La finestra di dialogo Debug pacchetto app installato consente di avviare un'app in modalità di debug nel computer di Visual Studio o in un dispositivo remoto oppure di impostare l'app per l'esecuzione in modalità di debug, ma non avviarla. Per altre informazioni, vedere Eseguire il debug di un pacchetto di app installato.
Dopo aver caricato l'app nel debugger, è possibile usare una delle procedure descritte in precedenza.
Diagnosi degli errori di attivazione delle attività in background
I log di diagnostica nel Visualizzatore eventi di Windows per l'infrastruttura in background contengono informazioni dettagliate che è possibile usare per diagnosticare e risolvere gli errori delle attività in background. Per visualizzare il log:
Aprire l'applicazione Visualizzatore eventi.
Nel riquadro Azioni scegliere Visualizza e verificare che Sia selezionata l'opzione Mostra log analitici e di debug .
Nell'albero visualizzatore eventi (locale) espandere i nodi Registri applicazioni e servizi>di Microsoft>Windows>BackgroundTasksInfrastructure.
Scegliere il log di diagnostica .