Compartilhar via


Como localizar assemblies usando DEVPATH

Observação

Este artigo é específico do .NET Framework. Ele não se aplica a implementações mais recentes do .NET, incluindo o .NET 6 e versões posteriores.

Talvez os desenvolvedores queiram garantir que um assembly compartilhado que eles estão criando funcione corretamente com vários aplicativos. Em vez de colocar continuamente o assembly no cache de assembly global durante o ciclo de desenvolvimento, o desenvolvedor pode criar uma variável de ambiente DEVPATH que aponta para o diretório de saída da construção do assembly.

Por exemplo, suponha que você esteja criando um assembly compartilhado chamado MySharedAssembly e o diretório de saída seja C:\MySharedAssembly\Debug. Você pode colocar C:\MySharedAssembly\Debug na variável DEVPATH. Em seguida, você deve especificar o <elemento developmentMode> no arquivo de configuração do computador. Esse elemento informa ao common language runtime para usar DEVPATH para localizar assemblies.

O conjunto compartilhado deve ser detectável pelo tempo de execução. Para especificar um diretório privado para resolver referências de assembly, use o <codeBase> Elemento ou <probing> Elemento em um arquivo de configuração, conforme descrito na especificação do local de um assembly. Você também pode colocar o assembly em um subdiretório do diretório do aplicativo. Para obter mais informações, consulte Como o Runtime localiza assemblies.

Observação

Esse é um recurso avançado, destinado apenas ao desenvolvimento.

O exemplo a seguir mostra como fazer com que o runtime pesquise assemblies em diretórios especificados pela variável de ambiente DEVPATH.

Example

<configuration>
  <runtime>
    <developmentMode developerInstallation="true"/>
  </runtime>
</configuration>

A configuração padrão é false.

Observação

Use essa configuração somente no momento do desenvolvimento. A execução não verifica as versões em assemblies de nome forte encontradas no DEVPATH. Ele simplesmente utiliza a primeira assemblagem que encontra.

Consulte também