Compartilhar via


Tarefa UnregisterAssembly

Cancela o registro os assemblies especificados para fins de interoperabilidade COM. Executa o inverso da tarefa RegisterAssembly.

Parâmetros

A tabela a seguir descreve os parâmetros da tarefa UnregisterAssembly.

Parâmetro Descrição
Assemblies Parâmetro opcional ITaskItem[].

Especifica os assemblies cujo registro deverá ser cancelado.
AssemblyListFile Parâmetro ITaskItem opcional.

Contém informações sobre o estado entre a tarefa RegisterAssembly e a tarefa UnregisterAssembly. Isso impede que a tarefa tente cancelar o registro de um assembly que falhou ao se registrar na tarefa RegisterAssembly.

Se esse parâmetro for especificado, os parâmetros Assemblies e TypeLibFiles serão ignorados.
TypeLibFiles Parâmetro de saída ITaskItem[] opcional.

Cancela o registro da biblioteca de tipos especificada do assembly especificado. Observação: esse parâmetro só será necessário se o nome de arquivo de biblioteca de tipos for diferente do nome do assembly.

Comentários

Não é necessário que o assembly exista para que esta tarefa seja bem-sucedida. Se você tentar cancelar o registro de um assembly que não existe, a tarefa terá êxito com um aviso. Isso ocorre porque é o trabalho dessa tarefa remover o registro do assembly do Registro. Se o assembly não existir, ele não estará no Registro e, portanto, a tarefa terá sido bem-sucedida.

Além dos parâmetros listados acima, essa tarefa herda parâmetros da classe AppDomainIsolatedTaskExtension, que herda da classe MarshalByRefObject. A classe MarshalByRefObject fornece a mesma funcionalidade que a classe Task, mas ela pode ser instanciada em seu próprio domínio do aplicativo.

Exemplo

O exemplo a seguir usa a tarefa UnregisterAssembly para cancelar o registro do assembly no caminho especificado pelas propriedades OutputPath e FileName, se ele existir.

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <PropertyGroup>
        <OutputPath>\Output\</OutputPath>
        <FileName>MyFile.dll</FileName>
    </PropertyGroup>
    <Target Name="UnregisterAssemblies">
        <UnregisterAssembly
            Condition="Exists('$(OutputPath)$(FileName)')"
            Assemblies="$(OutputPath)$(FileName)" />
    </Target>

</Project>

Confira também