Condividi tramite


Procedure consigliate di sviluppo per i componenti aggiuntivi COM, VSTO e VBA in Office

Se si sviluppano componenti aggiuntivi COM, VSTO o VBA per Office, seguire le procedure consigliate per lo sviluppo descritte in questo articolo. In modo da garantire:

  • Compatibilità dei componenti aggiuntivi tra versioni e distribuzioni diverse di Office.
  • Riduzione della complessità della distribuzione del componente aggiuntivo per gli utenti e gli amministratori IT.
  • Non si verificano errori di installazione o di runtime imprevisti del componente aggiuntivo.

Nota: l'uso di Desktop Bridge per preparare il componente aggiuntivo COM, VSTO o VBA per Windows Store non è supportato. I componenti aggiuntivi COM, VSTO e VBA non possono essere distribuiti in Windows Store o in Office Store.

Non verificare la presenza di Office durante l'installazione

Non è consigliabile che il componente aggiuntivo rilevi se Office è installato durante il processo di installazione del componente aggiuntivo. Se Office non è installato, è possibile installare il componente aggiuntivo e l'utente sarà in grado di accedervi dopo l'installazione di Office.

Usare tipi di interoperabilità incorporati (NoPIA)

Se la soluzione usa .NET 4.0 o versione successiva, usare tipi di interoperabilità incorporati (NoPIA) anziché in base agli assembly di interoperabilità primari di Office ridistribuibili. L'uso dell'incorporamento dei tipi riduce le dimensioni di installazione della soluzione e garantisce la compatibilità futura. Office 2010 è l'ultima versione di Office che ha fornito l'pia ridistribuibile. Per altre informazioni, vedere Procedura dettagliata: Incorporamento delle informazioni sui tipi dagli assembly di Microsoft Office e Equivalenza dei tipi e tipi di interoperabilità incorporati.

Se la soluzione usa una versione precedente di .NET, è consigliabile aggiornare la soluzione per usare .NET 4.0 o versione successiva. L'uso di .NET 4.0 o versione successiva riduce i prerequisiti di runtime nelle versioni più recenti di Windows.

Evitare di dipendere da specifiche versioni di Office

Se la soluzione usa funzionalità disponibili solo nelle versioni più recenti di Office, verificare che la funzionalità esista (se possibile, a livello di funzionalità) in fase di esecuzione (ad esempio, usando la gestione delle eccezioni o controllando la versione). Convalidare le versioni minime, anziché versioni specifiche, usando le API supportate nel modello a oggetti, ad esempio la proprietà Application.Version. Non è consigliabile basarsi su metadati binari di Office, percorsi di installazione o chiavi del Registro di sistema perché possono cambiare tra installazioni, ambienti e versioni.

Abilitare l'utilizzo di Office a 32 bit e a 64 bit

La destinazione di compilazione predefinita deve supportare sia a 32 bit (x86) che a 64 bit (x64), a meno che la soluzione non dipende dalle librerie disponibili solo per un bitness specifico. La versione a 64 bit di Office sta aumentando nell'adozione, soprattutto negli ambienti Big Data. Il supporto sia a 32 bit che a 64 bit semplifica la transizione degli utenti tra le versioni a 32 bit e a 64 bit di Office.

Quando si scrive codice VBA, usare istruzioni di dichiarazione sicura a 64 bit e convertire le variabili in base alle esigenze. Assicurarsi inoltre che i documenti possano essere condivisi tra gli utenti che eseguono versioni a 32 bit o a 64 bit di Office fornendo codice per ogni bitness. Per altre informazioni, vedere Panoramica di Visual Basic a 64 bit per le applicazioni.

Supportare ambienti con restrizioni

La soluzione non deve richiedere privilegi di elevazione dell'account utente o Amministrazione istrator. Inoltre, la soluzione non deve dipendere dall'impostazione o dalla modifica:

  • Directory di lavoro corrente
  • Directory di caricamento DLL.
  • Variabile PATH.

Modificare il percorso di salvataggio dei dati e delle impostazioni condivisi

Se la soluzione è costituita da un componente aggiuntivo e da un processo esterno a Office, non utilizzare la cartella dati dell'applicazione dell'utente o il Registro di sistema per scambiare dati o impostazioni tra il componente aggiuntivo e il processo esterno. Prendere invece in considerazione l'uso della cartella temporanea dell'utente, della cartella documenti o della directory di installazione della soluzione.

Incrementare il numero di versione con ogni aggiornamento

Impostare il numero di versione dei file binari nella soluzione e incrementarlo con ogni aggiornamento. In questo modo gli utenti potranno identificare più facilmente le modifiche tra le versioni e valutare la compatibilità.

Fornire istruzioni di supporto per le versioni più recenti di Office

I clienti chiedono agli ISV di fornire istruzioni di supporto per i componenti aggiuntivi COM, VSTO e VBA eseguiti in Office. Elencare le istruzioni di supporto esplicite aiuta i clienti a usare le app di Microsoft 365 per gli strumenti di idoneità aziendale a comprendere il supporto tecnico.

Per fornire istruzioni di supporto per le applicazioni client di Office (ad esempio Word o Excel), verificare prima di tutto che i componenti aggiuntivi vengano eseguiti nella versione corrente di Office e quindi eseguire il commit di fornire aggiornamenti se il componente aggiuntivo si interrompe in una versione futura. Non è necessario testare i componenti aggiuntivi quando Microsoft rilascia una nuova build o un aggiornamento a Office. Microsoft cambia raramente la piattaforma di estendibilità COM, VSTO e VBA in Office e queste modifiche saranno ben documentate.

Importante: Microsoft gestisce un elenco di componenti aggiuntivi supportati per i report di conformità e le informazioni di contatto ISV. Per ottenere il componente aggiuntivo elencato, vedere /configmgr/desktop-analytics/ready-for-windows.

Usare Monitoraggio processi per eseguire il debug dell'installazione o il caricamento dei problemi

Se il componente aggiuntivo presenta problemi di compatibilità durante l'installazione o il caricamento, potrebbero essere correlati a problemi con l'accesso al file o al Registro di sistema. Usare Monitoraggio processi o uno strumento di debug simile per registrare e confrontare il comportamento con un ambiente di lavoro per identificare il problema.