Condividi tramite


Eseguire il debug di progetti di Office

È possibile eseguire il debug dei progetti di Office usando gli stessi strumenti di Microsoft Visual Studio usati per altri progetti di Visual Studio. Le funzionalità del debugger di Visual Studio, ad esempio la possibilità di inserire punti di interruzione e visualizzare le variabili nella finestra Variabili locali, sono disponibili anche quando si esegue il debug dei progetti di Office. Per altre informazioni sugli strumenti di debug di Visual Studio, vedere Debug in Visual Studio.

Suggerimento

Per semplificare il debug, chiudere tutte le istanze dell'applicazione di Office aperte, prima di generare ed eseguire il debug.

Si applica a: le informazioni contenute in questo argomento si applicano ai progetti a livello di documento e ai progetti di componente aggiuntivo VSTO. Vedere Funzionalità disponibili per app Office lication e tipo di progetto.

Nota

Si è interessati allo sviluppo di soluzioni che estendono l'esperienza di Office tra più piattaforme? Vedere il nuovo modello di componenti aggiuntivi per Office. I componenti aggiuntivi di Office hanno un footprint ridotto rispetto ai componenti aggiuntivi e alle soluzioni VSTO ed è possibile compilarli usando quasi qualsiasi tecnologia di programmazione Web, ad esempio HTML5, JavaScript, CSS3 e XML.

Avviare e arrestare il debugger

È possibile avviare il debug di un progetto di Office esattamente come si avvia il debug di altri progetti di Visual Studio; ad esempio, è possibile premere F5. Quando si avvia il debug di un progetto di componente aggiuntivo VSTO, viene avviato un nuovo processo per il app Office lication di destinazione e viene caricato il componente aggiuntivo VSTO.

Quando si avvia il debug di un progetto a livello di documento, il documento o la cartella di lavoro viene aperta in un nuovo processo di Word o Excel.

Quando si arresta il debugger, il debugger interrompe improvvisamente il processo di applicazione o viene disconnesso se il debugger è impostato per disconnettersi. Tutti gli altri documenti aperti nel processo dell'applicazione di Office terminata vengono chiusi senza avviso e le modifiche non salvate vengono perse. Questo potrebbe includere tutti i documenti o le cartelle di lavoro che vengono aperti durante l'esecuzione del debugger.

In genere, si consiglia di disconnettersi dal processo prima di arrestare il debugger in modo da poter chiudere l'applicazione di Office in modo normale. È anche possibile disconnettersi dal processo per prima cosa se si desidera usare un documento o un foglio di lavoro aperto dopo l'arresto del debugger.

Se si esegue il debug di una personalizzazione a livello di documento per Word, arrestando ripetutamente il debugger e causando la chiusura improvvisa di Word, si può danneggiare il modello Normale. In questo caso, è possibile eliminare il modello Normale danneggiato che verrà ricreato automaticamente alla successiva apertura di Word. Tuttavia, non vengono ricreate le macro che sono state archiviate nel modello Normale.

Eseguire il debug dei componenti aggiuntivi VSTO di Office 2013 con Office 2013 o Office 2016

Se si usa Visual Studio 2015 e si dispone di entrambe le versioni di Office installate side-by-side, Visual Studio avvia Office 2016. Se si usa Visual Studio 2013, Visual Studio avvia Office 2013.

Per eseguire il debug del componente aggiuntivo VSTO con una versione di Office diversa (2013 o 2016), aprire Creazione progettie scegliere il pulsante di opzione Avvia programma esterno nella scheda Debug . Quindi, passare al percorso dell'eseguibile dell'applicazione di Office appropriata.

Comportamento F10 e F11

Quando si avvia il debug di un progetto di Office, F10 e F11 non hanno lo stesso comportamento di quando si avvia il debug di altri progetti Visual Basic o C#. Nei progetti Visual Basic o C#, il debugger si arresta sulla funzione principale. Nei progetti di Office, Visual Studio non dispone di controllo sulla funzione principale dell'applicazione di Office. Tuttavia, durante il debug, F10 e F11 hanno le stesse funzioni di nei progetti Visual Basic e C#.

Visualizzare le eccezioni

A causa del modo con cui il codice gestito interagisce con il codice non gestito, in Visual Studio non vengono visualizzati gli errori generati dalle applicazioni di Microsoft Office. Ad esempio, se un componente aggiuntivo VSTO creato tramite gli strumenti di sviluppo di Office in Visual Studio genera un'eccezione, l'app Office lication di Microsoft continua senza visualizzare un errore. Per visualizzare questi errori, impostare il debugger in modo che si interrompa in caso di eccezioni di Common Language Runtime. Per altre informazioni, vedere Gestire le eccezioni con il debugger.

Se si imposta il debugger per interrompere l'esecuzione in caso di eccezioni di Common Language Runtime, tutte le eccezioni a questo punto verranno interrotte nel debugger, incluse quelle gestite e alcune eccezioni first-chance del runtime stesso che potrebbero non essere rilevanti per il progetto. Gli errori che fanno riferimento a msosec non trovato, vengono visualizzati in ogni progetto, ma è possibile ignorarli. Queste eccezioni msosec non avranno effetto sulla soluzione.

È inoltre possibile usare le istruzioni Try...Catch sui metodi per raccogliere le eccezioni.

Per impostazione predefinita, in Visual Studio non vengono visualizzati gli errori di debug Just-In-Time per i progetti di Office. Tuttavia, è possibile abilitare questa funzionalità in modo da poter visualizzare gli errori che vengono generati. Per altre informazioni, vedere Debug JIT in Visual Studio.

Argomenti della riga di comando

Se l'azione di avvio nella pagina delle proprietà Debug è impostata su Avvia progetto, Visual Studio non usa argomenti della riga di comando durante il debug del progetto, anche se sono stati specificati argomenti della riga di comando come opzioni di avvio. Se si desidera utilizzare gli argomenti della riga di comando quando si avvia il debug, è necessario selezionare un'azione di avvio diversa da Avvia progetto.

Controllo del codice sorgente

Le proprietà del debug non sono condivise tra più utenti sotto il controllo del codice sorgente. I progetti Visual Basic e C# archiviano le proprietà di debug in un file specifico dell'utente (NomeProgetto.vbproj.user o NomeProgetto.csproj.user) e questo file non è incluso nel controllo del codice sorgente. Se più di una persona sta eseguendo il debug, è necessario che ciascuna immetta manualmente le proprietà di debug.

Eseguire il debug di set di dati memorizzati nella cache in un progetto a livello di documento

Ogni volta che si compila un progetto, il dataset viene svuotato e ricreato. Se si desidera eseguire il debug di un dataset memorizzato nella cache, è necessario aprire il documento all'esterno di Visual Studio e quindi connettere il debugger.

Eseguire il debug di progetti di documenti di Word in base al formato documento di Word 97-2003 (*.doc)

Per eseguire il debug di un progetto di documento di Word basato sul formato Documento di Word 97-2003 (/.doc*), è necessario aggiungere la cartella del progetto all'elenco di cartelle attendibili. Per altre informazioni su come eseguire questa operazione, vedere Concedere l'attendibilità ai documenti.

Eseguire il debug di componenti aggiuntivi disabilitati

Le applicazioni di Microsoft Office possono disabilitare i componenti aggiuntivi VSTO che si comportano in modo imprevisto. Un'applicazione di Microsoft Office disabilita i componenti aggiuntivi VSTO per impedire che il codice con errori venga caricato ogni volta che viene avviata l'applicazione. Tuttavia, è anche facile causare un comportamento imprevisto durante il normale debug. Per informazioni su come riabilitare i componenti aggiuntivi VSTO, vedere Procedura: Riabilitare un componente aggiuntivo VSTO disabilitato.

Esistono due tipi di disabilitazione usati dalle applicazioni di Microsoft Office per i componenti aggiuntivi VSTO: disabilitazione che causa la chiusura imprevista dell'applicazione e disabilitazione che non causa la chiusura imprevista dell'applicazione.

Disabilitazione rigida

La disabilitazione rigida può verificarsi quando un componente aggiuntivo VSTO causa la chiusura imprevista dell'applicazione. Si potrebbe verificare anche nel computer di sviluppo se si arresta il debugger durante l'esecuzione del gestore eventi Startup nel componente aggiuntivo VSTO. Quando un componente aggiuntivo VSTO è disabilitato, viene visualizzato nell'elenco Elementi disabilitati nell'applicazione.

Se un app Office lication hard disabilita un componente aggiuntivo VSTO creato usando gli strumenti di sviluppo di Office in Visual Studio, l'applicazione disabilita solo il componente aggiuntivo VSTO che ha causato l'errore. Gli altri componenti aggiuntivi VSTO creati usando gli strumenti di sviluppo di Office in Visual Studio per l'applicazione di Office continueranno il caricamento.

Disabilitazione temporanea

La disabilitazione di tipo "soft" può verificarsi quando un componente aggiuntivo VSTO genera un errore che non causa la chiusura imprevista dell'applicazione. Ad esempio, un'applicazione potrebbe eseguire la disabilitazione di tipo "soft" di un componente aggiuntivo VSTO se viene generata un'eccezione non gestita durante l'esecuzione del gestore eventi Startup . Quando un componente aggiuntivo VSTO è disabilitato leggero, viene visualizzato nell'elenco Componenti aggiuntivi applicazione inattivi nell'applicazione e l'applicazione modifica il valore della voce del Registro di sistema LoadBehavior per il componente aggiuntivo VSTO per indicare che è stato scaricato. Per altre informazioni sulla voce del Registro di sistema LoadBehavior , vedere Voci del Registro di sistema per i componenti aggiuntivi VSTO.

Risolvere gli errori di installazione usando il Visualizzatore eventi

Il Strumenti di Visual Studio per il runtime di Office scrive i messaggi nella Visualizzatore eventi in Windows per tutte le eccezioni generate durante l'installazione o la disinstallazione di soluzioni Office. È possibile usare questi messaggi per risolvere i problemi di installazione e distribuzione.

Risolvere gli errori di avvio usando un file di log e messaggi di errore

Il Strumenti di Visual Studio per il runtime di Office può scrivere tutti gli errori che si verificano durante l'avvio in un file di log o visualizzare ogni errore in una finestra di messaggio. Per impostazione predefinita, le opzioni sono disattivate. È possibile attivare le opzioni creando variabili di ambiente.

Per visualizzare ogni errore in una finestra di messaggio, creare una variabile di ambiente denominata VSTO_SUPPRESSDISPLAYALERTS e impostarla su 0 (zero). È possibile eliminare i messaggi eliminando la variabile di ambiente o impostandola su 1 (uno).

Per scrivere gli errori in un file di log, creare una variabile di ambiente denominata VSTO_LOGALERTS e impostarla su 1 (uno). Il Strumenti di Visual Studio per il runtime di Office crea il file di log nella cartella contenente il manifesto della distribuzione per il componente aggiuntivo VSTO o nella cartella contenente il documento o la cartella di lavoro associata alla personalizzazione. In caso di errore, il Strumenti di Visual Studio per il runtime di Office crea il file di log nella cartella %TEMP% locale. Per i componenti aggiuntivi VSTO a livello di applicazione, il nome predefinito è nome componente aggiuntivo.vsto.log. Per i progetti a livello di documento, il nome del file di log è nome documento.estensione.log, ad esempio ExcelWorkbook1.xlsx.log. Per arrestare la registrazione degli errori, eliminare la variabile di ambiente o impostarla su 0 (zero).