Share via


Procedura: creare criteri editore

Aggiornamento: novembre 2007

È possibile che i fornitori di assembly consiglino l'utilizzo di una versione più recente di un assembly per l'esecuzione delle applicazioni fornendo un file dei criteri editore con l'assembly aggiornato. Il file dei criteri editore contiene le impostazioni della base di codice e per il reindirizzamento degli assembly e utilizza lo stesso formato del file di configurazione dell'applicazione. Il file dei criteri editore viene compilato in un assembly e inserito nella Global Assembly Cache.

La creazione dei criteri editore si articola in tre passaggi.

  1. Creazione di un file dei criteri editore.

  2. Creazione di un assembly dei criteri editore.

  3. Aggiunta dell'assembly dei criteri editore alla Global Assembly Cache.

Lo schema per i criteri editore viene descritto nella sezione Reindirizzamento delle versioni degli assembly. Nell'esempio riportato di seguito viene illustrato un file dei criteri editori che consente di reindirizzare una versione di myAssembly.

<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
         <assemblyIdentity name="myAssembly"
                           publicKeyToken="32ab4ba45e0a69a1"
                           culture="en-us" />
         <!-- Redirecting to version 2.0.0.0 of the assembly. -->
         <bindingRedirect oldVersion="1.0.0.0"
                          newVersion="2.0.0.0"/>
       </dependentAssembly>
      </assemblyBinding>
   </runtime>
</configuration>

Per informazioni su come specificare una base di codice, vedere Specifica della posizione di un assembly.

Creazione dell'assembly dei criteri editore

Utilizzare Assembly Linker (Al.exe) per creare l'assembly dei criteri editore.

Per creare un assembly dei criteri editore

  • Digitare il seguente comando al prompt dei comandi:

    **al /link:**publisherPolicyFile **/out:**publisherPolicyAssemblyFile **/keyfile:**keyPairFile **/platform:**processorArchitecture

    In questo comando:

    • L'argomento publisherPolicyFile è il nome del file dei criteri editore.

    • L'argomento publisherPolicyAssemblyFile è il nome dell'assembly dei criteri editore risultante da questo comando. Il nome del file di assembly deve seguire il formato:

      policy.majorNumber.minorNumber.mainAssemblyNameDLL

    • L'argomento keyPairFile è il nome del file che contiene la coppia di chiavi. È necessario utilizzare la stessa coppia di chiavi per firmare l'assembly e l'assembly dei criteri editore.

    • L'argomento processorArchitecture identifica la piattaforma di destinazione di un assembly specifico di un processore, ad esempio amd64, ia64, msil o x86.

      Nota:

      La possibilità di utilizzare come destinazione un'architettura specifica di un processore è una nuova funzionalità di .NET Framework versione 2.0.

    Mediante il comando riportato di seguito viene creato un assembly dei criteri editore denominato policy.1.0.myAssembly da un file dei criteri editore denominato pub.config. Viene inoltre assegnato all'assembly un nome sicuro mediante la coppia di chiavi presente nel file sgKey.snk e viene specificata come destinazione dell'assembly l'architettura del processore x86.

    al /link:pub.config /out:policy.1.0.myAssembly.dll /keyfile:sgKey.snk /platform:x86
    

    L'assembly dei criteri editore deve corrispondere all'architettura del processore dell'assembly a cui si applica. Se pertanto il valore ProcessorArchitecture dell'assembly è impostato su MSIL, l'assembly dei criteri editore per tale assembly deve essere creato con /platform:msil. È necessario specificare un assembly dei criteri editore separato per ogni assembly specifico di un processore.

    Come conseguenza di questa regola, per modificare l'architettura del processore per un assembly, è necessario modificare il componente principale o secondario del numero di versione, in modo da poter fornire a un nuovo assembly dei criteri editore l'architettura di processore corretta. Non è più possibile utilizzare l'assembly dei criteri editore precedente per l'assembly dopo aver specificato un'architettura di processore diversa.

    Un'altra conseguenza è che non è possibile utilizzare il linker della versione 2.0 per creare un assembly dei criteri editore per un assembly compilato utilizzando versioni precedenti di .NET Framework, poiché viene specificata l'architettura del processore.

Aggiunta dell'assembly dei criteri editore alla Global Assembly Cache

Utilizzare lo strumento Global Assembly Cache (Gacutil.exe) per aggiungere l'assembly dei criteri editore alla Global Assembly Cache.

Per aggiungere l'assembly dei criteri editore alla Global Assembly Cache

  • Digitare il seguente comando al prompt dei comandi:

    gacutil /i publisherPolicyAssemblyFile

    Mediante il seguente comando viene aggiunto l'assembly policy.1.0.myAssembly.dll alla Global Assembly Cache.

    gacutil /i policy.1.0.myAssembly.dll
    
    Nota importante:

    L'assembly dei criteri editore non può essere aggiunto alla Global Assembly Cache a meno che il file dei criteri editore originale non sia contenuto nella stessa directory dell'assembly.

Vedere anche

Concetti

Come il runtime individua gli assembly

Reindirizzamento delle versioni di assembly

Riferimenti

Schema delle impostazioni dell'ambiente di esecuzione

Altre risorse

Programmazione con gli assembly

File di configurazione

Configurazione di applicazioni

Schema dei file di configurazione per .NET Framework