Definizione del percorso di file VSPackage nella shell di Visual Studio

Visual Studio deve essere in grado di individuare la DLL dell'assembly per caricare il VSPackage. È possibile individuarlo in vari modi, come descritto nella tabella seguente.

metodo Descrizione
Usare la chiave del Registro di sistema CodeBase. La chiave CodeBase può essere usata per indirizzare Visual Studio a caricare l'assembly VSPackage da qualsiasi percorso di file completo. Il valore della chiave deve essere il percorso del file della DLL. Questo è il modo migliore per caricare l'assembly del pacchetto in Visual Studio. Questa tecnica viene talvolta definita "tecnica della directory di installazione di CodeBase/privata". Durante la registrazione il valore della codebase viene passato alle classi di attributi di registrazione tramite un'istanza del RegistrationAttribute.RegistrationContext tipo .
Posizionare la DLL nella directory PrivateAssemblies . Posizionare l'assembly nella sottodirectory PrivateAssemblies della directory di Visual Studio. Gli assembly che si trovano in PrivateAssemblies vengono rilevati automaticamente, ma non sono visibili nella finestra di dialogo Aggiungi riferimenti . La differenza tra PrivateAssemblies e PublicAssemblies consiste nel fatto che gli assembly in PublicAssemblies vengono enumerati nella finestra di dialogo Aggiungi riferimenti . Se si sceglie di non usare la tecnica "CodeBase/private installation directory", è necessario eseguire l'installazione nella directory PrivateAssemblies .
Usare un assembly con nome sicuro e la chiave del Registro di sistema assembly. La chiave assembly può essere usata per indirizzare in modo esplicito Visual Studio al caricamento di un assembly VSPackage con nome sicuro. Il valore della chiave deve essere il nome sicuro dell'assembly.
Posizionare la DLL nella directory PublicAssemblies . Infine, l'assembly può essere inserito anche nella sottodirectory PublicAssemblies . Gli assembly che si trovano in PublicAssemblies vengono rilevati automaticamente e verranno visualizzati anche nella finestra di dialogo Aggiungi riferimenti in Visual Studio.

Gli assembly VSPackage devono essere inseriti nella directory PublicAssemblies solo se contengono componenti gestiti che devono essere riutilizzati da altri sviluppatori VSPackage. La maggior parte degli assembly non soddisfa questo criterio.

Nota

Usare assembly con nome sicuro e firmati per tutti gli assembly dipendenti. Questi assembly devono essere installati anche nella propria directory o nella Global Assembly Cache (GAC). Ciò protegge da conflitti con assembly con lo stesso nome di file di base, noto come associazione di nomi deboli.