Condividi tramite


Visualizzare gli eventi con IntelliTrace in Visual Studio Enterprise (C#, Visual Basic)

È possibile usare IntelliTrace per raccogliere informazioni su eventi o categorie di eventi specifici o sulle singole chiamate di funzione oltre agli eventi. Le procedure seguenti illustrano come eseguire questa operazione.

È possibile usare IntelliTrace in Visual Studio Enterprise Edition, ma non nelle edizioni Professional o Community.

Configurare IntelliTrace

È possibile provare a eseguire il debug solo con gli eventi IntelliTrace. Gli eventi IntelliTrace sono eventi del debugger, eccezioni, eventi .NET Framework e altri eventi di sistema. È consigliabile attivare o disattivare eventi specifici per controllare gli eventi registrati da IntelliTrace prima di avviare il debug. Per altre informazioni, vedere Funzionalità di IntelliTrace.

  • Attivare l'evento IntelliTrace per accesso file. Passare alla pagina Strumenti > Opzioni > IntelliTrace IntelliTrace > Eventi e espandere la categoria File . Controllare la categoria di eventi File . In questo modo, tutti gli eventi di file (accesso, chiusura, eliminazione) verranno controllati.

Creare l'app

  1. Creare un'applicazione console C#. Nel file Program.cs aggiungere l'istruzione seguente using :

    using System.IO;
    
  2. Creare un FileStream oggetto nel metodo Main, leggerlo, chiuderlo ed eliminare il file. Aggiungere un'altra riga solo per avere una posizione in cui impostare un punto di interruzione:

    static void Main(string[] args)
    {
        FileStream fs = File.Create("WordSearchInputs.txt");
        fs.ReadByte();
        fs.Close();
        File.Delete("WordSearchInputs.txt");
    
        Console.WriteLine("done");
    }
    
  3. Impostare un punto di interruzione su Console.WriteLine("done");

Avviare il debug e visualizzare gli eventi IntelliTrace

  1. Avviare il debug come di consueto. Premere F5 o fare clic su Debug > Avvia debug.

    Suggerimento

    Mantenere aperte le finestre Variabili locali e Auto durante il debug per visualizzare e registrare i valori in tali finestre.

  2. L'esecuzione si arresta in corrispondenza del punto di interruzione. Se non viene visualizzata la finestra Strumenti di diagnostica , fare clic su Debug > eventi di Windows > IntelliTrace.

    Nella finestra Strumenti di diagnostica individuare la scheda Eventi .Dovrebbero essere visualizzate 3 schede, Eventi, Utilizzo memoria e Utilizzo CPU. Nella scheda Eventi viene visualizzato un elenco cronologico di eventi, che termina con l'ultimo evento prima che il debugger abbia interrotto l'esecuzione. Verrà visualizzato un evento denominato Access WordSearchInputs.txt.

    Screenshot della finestra di Visual Studio Code. L'esecuzione viene arrestata in corrispondenza di un punto di interruzione e la scheda Eventi nella finestra Strumenti di diagnostica elenca gli eventi.

  3. Selezionare l'evento per espanderne i dettagli.

    Screenshot della scheda Eventi nella finestra Strumenti di diagnostica di Visual Studio. Un evento viene selezionato ed espanso per visualizzare i dettagli.

    È possibile scegliere il collegamento pathname per aprire il file. Se il percorso completo non è disponibile, verrà visualizzata la finestra di dialogo Apri file .

    Fare clic su Attiva debug cronologico, che imposta il contesto del debugger sull'ora in cui è stato raccolto l'evento selezionato, visualizzando i dati cronologici nello stack di chiamate, nelle variabili locali e nelle altre finestre del debugger partecipanti. Se il codice sorgente è disponibile, Visual Studio sposta il puntatore al codice corrispondente nella finestra di origine in modo da poterlo esaminare.

    Screenshot della finestra di Visual Studio Code. L'esecuzione viene arrestata in corrispondenza di un punto di interruzione, viene selezionato un evento e la riga di codice corrispondente è evidenziata.

  4. Se il bug non è stato trovato, provare ad esaminare altri eventi che portano al bug. È anche possibile configurare IntelliTrace per registrare le informazioni sulle chiamate, in modo da poter esaminare passo passo le chiamate di funzione.

È possibile usare alcune delle funzionalità avanzate di IntelliTrace con il debug cronologico: