Partilhar via


Especificar o local de um Assembly

Há duas maneiras para especificar o local de um assembly:

Você também pode usar o .NET Framework (Mscorcfg) para especificar locais de assembly ou especificar locais para o common language runtime investigar os assemblies.

Usando o <codeBase> Elemento

Você pode usar o <codeBase> elemento apenas na máquina configuração ou publisher arquivos de política que também redirecionar a versão do assembly. Quando o tempo de execução determina qual versão do assembly usar, ela se aplica a configuração de base de código do arquivo que determina a versão. Se a base de código for indicada, o tempo de execução testes para o assembly da maneira normal. Para obter detalhes, consulte Como o Runtime localiza Assemblies.

O exemplo a seguir mostra como especificar o local de um assembly.

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

O versão atributo é necessário para todos os assemblies de nome forte, mas deve ser omitido para assemblies que não são fortes. O <codeBase> elemento requer a href atributo. Não é possível especificar intervalos de versão na <codeBase> elemento.

Observação

Se você está fornecendo uma referência de base de código para um assembly que não é fortes, a dica deve apontar para a base do aplicativo ou um subdiretório do diretório base do aplicativo.

Usando <probing> Elemento

O runtime localiza assemblies que não têm uma base de código por investigação. Para obter mais informações sobre a investigação, consulte Como o Runtime localiza Assemblies.

Você pode usar o <probing> o elemento no arquivo de configuração do aplicativo para especificar o tempo de execução deve pesquisar para localizar um assembly de subdiretórios. O exemplo a seguir mostra como especificar diretórios, que o runtime deve pesquisar.

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

O privatePath atributo contém os diretórios que o runtime deve procurar por assemblies. Se o aplicativo está localizado em c:\Arquivos de MyApp, o runtime irá procurar os assemblies que não especificam uma base de código em c:\Arquivos de Files\MyApp\Bin, c:\Arquivos de Files\MyApp\Bin2\Subbin e c:\Arquivos de Files\MyApp\Bin3. Diretórios especificados no privatePath devem ser subdiretórios do diretório base do aplicativo.

Consulte também

Conceitos

Assemblies no Common Language Runtime

Como o Runtime Localiza Assemblies

Outros recursos

Programação com assemblies

Configurando aplicativos