UnregisterAssembly (attività)
Annulla la registrazione degli assembly specificati ai fini dell'interoperabilità COM. Esegue operazioni inverse rispetto all'attività RegisterAssembly.
Parametri
Nella tabella che segue vengono 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 . Questo impedisce all'attività di tentare l'annullamento della registrazione di un assembly che non è riuscita nell'attività RegisterAssembly .Se questo parametro è specificato, i parametri Assemblies e TypeLibFiles verranno ignorati. |
TypeLibFiles |
Parametro di output ITaskItem[] facoltativo.Annulla la registrazione della libreria dei tipi indicata dall'assembly specificato. Nota: questo parametro è necessario solo se il nome dei file della libreria dei tipi non corrisponde a quello dell'assembly. |
Osservazioni:
Per la corretta esecuzione dell'attività non è necessario che l'assembly sia presente. Se si prova ad annullare la registrazione di un assembly inesistente, l'attività verrà comunque 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 non esiste, non si trova nel Registro di sistema e l'attività viene pertanto eseguita correttamente.
Oltre ai parametri elencati sopra, questa attività eredita i parametri dalla classe AppDomainIsolatedTaskExtension, che a sua volta eredita dalla classe MarshalByRefObject. La classe MarshalByRefObject
offre la stessa funzionalità della classe Task, ma è possibile crearne un'istanza nel relativo dominio dell'applicazione.
Esempio
Nell'esempio seguente l'attività UnregisterAssembly
viene usata per annullare la registrazione dell'assembly eventualmente presente nel percorso specificato dalle proprietà OutputPath
e FileName
.
<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>