Condividi tramite


Procedura: accedere alle risorse in DLL satellite

Dopo avere creato una DLL satellite e avere aggiunto le risorse desiderate (icone, bitmap, stringhe di risorsa e così via), è possibile utilizzare queste ultime in componenti aggiunti e altri progetti di automazione. Nella procedura seguente viene illustrato come eseguire questa operazione.

Nota

Le finestre di dialogo e i comandi di menu visualizzati potrebbero non corrispondere a quelli descritti nella Guida in quanto dipendono dall'edizione o dalle impostazioni attive. Queste routine sono state sviluppate con le Impostazioni generali per lo sviluppo attive. Per modificare le impostazioni, scegliere Importa/Esporta impostazioni dal menu Strumenti. Per ulteriori informazioni, vedere Gestione delle impostazioni.

Accesso alle risorse in DLL satellite

  1. Aprire Visual Studio e caricare un progetto di componente aggiuntivo esistente oppure crearne uno nuovo.

  2. Aggiungere l'esempio di codice seguente, compilarlo ed eseguirlo.

Esempio

Di seguito è riportato l'algoritmo generico utilizzato da Visual Studio per individuare una DLL satellite. È possibile utilizzare questo codice per verificare che la DLL satellite sia stata compilata correttamente, nel percorso appropriato e con il nome di risorsa previsto.

static void Main(string[] args)
{
    string path = @"<some path here>";
    System.Reflection.Assembly asm =    
    System.Reflection.Assembly.LoadFrom(path);
    // For enhanced security, use the LoadFrom overload 
    // System.Reflection.Assembly.LoadFrom(path, securityInfo);
    // where securityInfo is an instance of an Evidence object.
    System.Reflection.Assembly assemblyForResources = 
    asm.GetSatelliteAssembly(System.Threading.
    Thread.CurrentThread.CurrentCulture);
    System.IO.Stream stream =    
    assemblyForResources.GetManifestResourceStream
    (assemblyForResources.GetManifestResourceNames()[0]);
    ResourceReader resReader = new ResourceReader(stream);
    foreach (System.Collections.DictionaryEntry entry in resReader)
    {
        System.Windows.Forms.MessageBox.Show(entry.Key.ToString());
    }
}

Compilazione del codice

Per utilizzare questo esempio, creare un'applicazione console Visual C#, aggiungere il codice al posto della funzione Main() e impostare la variabile Path sul percorso dell'assembly del componente aggiuntivo anziché su quello della DLL satellite. Durante l'esecuzione tutte le risorse disponibili verranno visualizzate nella DLL satellite.

Vedere anche

Attività

Procedura dettagliata: creazione di DLL satellite gestite