Dela via


Ange en sammansättnings plats

Kommentar

Den här artikeln är specifik för .NET Framework. Det gäller inte för nyare implementeringar av .NET, inklusive .NET 6 och senare versioner.

Det finns två sätt att ange en sammansättnings plats:

Du kan också använda konfigurationsverktyget för .NET Framework (Mscorcfg.msc) för att ange sammansättningsplatser eller ange platser för den vanliga språkkörningen för avsökning för sammansättningar.

Använda codeBase-elementet <>

Du kan endast använda <codeBase-elementet> i datorkonfigurations- eller utgivarprincipfiler som även omdirigerar sammansättningsversionen. När körningen avgör vilken sammansättningsversion som ska användas, tillämpas kodbasinställningen från filen som avgör versionen. Om ingen kodbas anges avsöker runtime-avsökningarna för sammansättningen på normalt sätt. Mer information finns i How the Runtime Locates Assemblies (Så här letar Runtime upp sammansättningar).

I följande exempel visas hur du anger en sammansättnings plats.

<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
         <assemblyIdentity name="myAssembly"
                           publicKeyToken="32ab4ba45e0a69a1"
                           culture="en-us" />
         <codeBase version="2.0.0.0"
                   href="http://www.litwareinc.com/myAssembly.dll"/>
       </dependentAssembly>
      </assemblyBinding>
   </runtime>
</configuration>

Versionsattributet krävs för alla starka namngivna sammansättningar, men bör utelämnas för sammansättningar som inte är starkt namngivna. CodeBase-elementet <>kräver href-attributet. Du kan inte ange versionsintervall i codeBase-elementet>.<

Kommentar

Om du anger ett kodbastips för en sammansättning som inte är starkt namngiven måste tipset peka på programbasen eller en underkatalog till programbaskatalogen.

Använda avsökningselementet <>

Körningen letar upp sammansättningar som inte har någon kodbas genom avsökning. Mer information om avsökning finns i How the Runtime Locates Assemblies( How the Runtime Locates Assemblies).

Du kan använda <avsökningselementet> i programkonfigurationsfilen för att ange underkataloger som körningen ska söka efter när en sammansättning hittas. I följande exempel visas hur du anger kataloger som runtime ska söka efter.

<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
         <probing privatePath="bin;bin2\subbin;bin3"/>
      </assemblyBinding>
   </runtime>
</configuration>

Attributet privatePath innehåller de kataloger som runtime ska söka efter sammansättningar. Om programmet finns i C:\Program Files\MyApp letar körningen efter sammansättningar som inte anger någon kodbas i C:\Program Files\MyApp\Bin, C:\Program Files\MyApp\Bin2\Subbin och C:\Program Files\MyApp\Bin3. Katalogerna som anges i privatePath måste vara underkataloger till programbaskatalogen.

Se även