Attività UnregisterAssembly
Annulla la registrazione degli assembly specificati ai fini dell'interoperabilità COM. Esegue le operazioni inverse rispetto all'Attività RegisterAssembly.
Parametri
Nella tabella riportata di seguito sono descritti i parametri dell'attività UnregisterAssembly.
Parametro |
Descrizione |
---|---|
Assemblies |
Parametro ITaskItem[] facoltativo. Specifica gli assembly di cui annullare la registrazione. |
AssemblyListFile |
Parametro ITaskItem facoltativo. Contiene informazioni sullo stato tra l'attività RegisterAssembly e l'attività UnregisterAssembly. Queste informazioni possono essere utilizzate per evitare che l'attività tenti di annullare la registrazione di un assembly che non è riuscito a eseguire la registrazione nell'attività RegisterAssembly. Se si specifica questo parametro, i parametri Assemblies e TypeLibFiles verranno ignorati. |
TypeLibFiles |
Parametro di output ITaskItem[] facoltativo. Annulla la registrazione della libreria dei tipi specificata dall'assembly specificato. Nota Questo parametro è necessario soltanto se il nome dei file della libreria dei tipi non corrisponde a quello dell'assembly. |
Note
Per la corretta esecuzione dell'attività non è necessario che l'assembly sia presente. Se si tenta di annullare la registrazione di un assembly inesistente, l'attività verrà eseguita correttamente e verrà visualizzato un avviso. Questa situazione si verifica perché l'attività ha la funzione di rimuovere la registrazione dell'assembly dal Registro di sistema. Se l'assembly è inesistente, non si trova nel Registro di sistema e l'attività viene pertanto eseguita correttamente.
Oltre ai parametri sopra elencati, questa attività eredita i parametri dalla classe AppDomainIsolatedTaskExtension, che eredita dalla classe MarshalByRefObject. La classe MarshalByRefObject fornisce la stessa funzionalità della classe Task. Tuttavia è possibile crearne un'istanza nel relativo dominio applicazione.
Esempio
Nell'esempio riportato di seguito l'attività UnregisterAssembly viene utilizzata per annullare la registrazione dell'assembly eventualmente presente nel percorso specificato dalle proprietà OutputPath e FileName.
<Project xmlns="https://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>