Sdílet prostřednictvím


Určení specifického umístění sestavení

Poznámka:

Tento článek je specifický pro rozhraní .NET Framework. Nevztahuje se na novější implementace .NET, včetně .NET 6 a novějších verzí.

Umístění sestavení lze zadat dvěma způsoby:

Konfigurační nástroj rozhraní .NET Framework (Mscorcfg.msc) můžete také použít k určení umístění sestavení nebo určení umístění modulu CLR (Common Language Runtime), který bude testovat sestavení.

Použití elementu <codeBase>

Prvek <codeBase> můžete použít pouze v systémových konfiguračních souborech nebo souborech zásad vydavatele, které také přesměrovávají verzi sestavení. Když běhové prostředí určuje, kterou verzi sestavení použít, aplikuje nastavení základu kódu ze souboru, který určuje verzi. Pokud není uveden žádný základní kód, běhové prostředí kontroluje sestavení obvyklým způsobem. Podrobnosti naleznete v tématu Jak modul runtime vyhledá sestavení.

Následující příklad ukazuje, jak určit umístění sestavení.

<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>

Atribut version je vyžadován pro všechna sestavení se silným názvem, ale musí být vynechán pro sestavení, která nejsou silným názvem. Element <codeBase> vyžaduje href atribut. V elementu <codeBase> nelze zadat rozsahy verzí.

Poznámka:

Pokud zadáváte základní nápovědu kódu pro sestavení, které není silně pojmenované, nápověda musí odkazovat na základ aplikace nebo podadresář základního adresáře aplikace.

Použití elementu <probing>

Modul runtime vyhledá sestavení, která nemají základ kódu, pomocí sondy. Další informace o sondování naleznete v tématu Jak modul runtime vyhledá sestavení.

Pomocí prvku probing v konfiguračním souboru aplikace můžete <určit podadresáře, které by modul runtime měl při vyhledání sestavení vyhledat.> Následující příklad ukazuje, jak určit adresáře, které má modul runtime prohledávat.

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

Atribut privatePath obsahuje adresáře, které by měl modul runtime vyhledávat pro sestavení. Pokud se aplikace nachází v umístění C:\Program Files\MyApp, modul runtime vyhledá sestavení, která nezadávají základ kódu v souboru C:\Program Files\MyApp\Bin, C:\Program Files\MyApp\Bin2\Subbin a C:\Program Files\MyApp\Bin3. Adresáře zadané v privatePath musí být podadresáře základního adresáře aplikace.

Viz také