UnregisterAssembly タスクUnregisterAssembly Task

COM 相互運用のために、指定されたアセンブリの登録を解除します。Unregisters the specified assemblies for COM interop purposes. RegisterAssembly タスクとは逆の処理になります。Performs the reverse of the RegisterAssembly task.


UnregisterAssembly タスクのパラメーターの説明を次の表に示します。The following table describes the parameters of the UnregisterAssembly task.

パラメーターParameter 説明Description
Assemblies 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

登録解除するアセンブリを指定します。Specifies the assemblies to be unregistered.
AssemblyListFile 省略可能な ITaskItem 型のパラメーターです。Optional ITaskItem parameter.

RegisterAssembly タスクと UnregisterAssembly タスクの間の状態に関する情報が含まれます。Contains information about the state between the RegisterAssembly task and the UnregisterAssembly task. これにより、RegisterAssembly タスクで登録に失敗したアセンブリの登録をタスクが解除しないようにできます。This prevents the task from attempting to unregister an assembly that failed to register in the RegisterAssembly task.

このパラメーターが指定されている場合、AssembliesTypeLibFiles のパラメーターは無視されます。If this parameter is specified, the Assemblies and TypeLibFiles parameters are ignored.
TypeLibFiles 省略可能な ITaskItem[] 型の出力パラメーターです。Optional ITaskItem[] output parameter.

指定したアセンブリから指定したタイプ アセンブリを登録解除します。Unregisters the specified type library from the specified assembly. 注: このパラメーターは、タイプ ライブラリのファイル名がアセンブリ名と異なる場合にのみ必要です。Note: This parameter is only necessary if the type library file name is different than the assembly name.


アセンブリが存在していなくても、このタスクは正常に終了します。It is not required that the assembly exists for this task to be successful. 存在しないアセンブリの登録を解除しようとした場合、タスクは警告を発行して正常終了します。If you attempt to unregister an assembly that does not exist, the task will succeed with a warning. これは、アセンブリ登録をレジストリから削除することが、このタスクのジョブであるためです。This occurs because it is the job of this task to remove the assembly registration from the registry. アセンブリが存在しない場合、アセンブリはレジストリに登録されていないため、タスクは正常に終了します。If the assembly does not exist, it is not in the registry, and therefore, the task succeeded.

上記のパラメーター以外に、このタスクは AppDomainIsolatedTaskExtension クラスからパラメーターを継承します。このクラス自体は、MarshalByRefObject クラスから継承されます。In addition to the parameters listed above, this task inherits parameters from the AppDomainIsolatedTaskExtension class, which itself inherits from the MarshalByRefObject class. MarshalByRefObject クラスは Task クラスと同じ機能を提供しますが、独自のアプリケーション ドメインでインスタンス化できます。The MarshalByRefObject class provides the same functionality as the Task class, but it can be instantiated in its own application domain.


次の例では UnregisterAssembly タスクを使用して、OutputPathFileName のプロパティで指定されたパスにあるアセンブリ (存在する場合) を登録解除します。The following example uses the UnregisterAssembly task to unregister the assembly at the path specified by the OutputPath and FileName properties, if it exists.

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">  
    <Target Name="UnregisterAssemblies">  
            Assemblies="$(OutputPath)$(FileName)" />  


参照See Also

RegisterAssembly タスク RegisterAssembly Task
タスク Tasks
Task Reference (タスク リファレンス)Task Reference