TaskLoggingHelper TaskLoggingHelper TaskLoggingHelper TaskLoggingHelper Class

定義

タスクで使用するヘルパー ログ メソッドを提供します。Provides helper logging methods used by tasks.

public ref class TaskLoggingHelper : MarshalByRefObject
public class TaskLoggingHelper : MarshalByRefObject
type TaskLoggingHelper = class
    inherit MarshalByRefObject
Public Class TaskLoggingHelper
Inherits MarshalByRefObject
継承
TaskLoggingHelperTaskLoggingHelperTaskLoggingHelperTaskLoggingHelper
派生

次の例では、1 つまたは複数のディレクトリを作成するタスクのコードを示します。The following example shows the code for a task that creates one or more directories.

using System;
using System.IO;
using System.Security;
using System.Collections;
using Microsoft.Build.Framework;
using Microsoft.Build.Utilities;

namespace Microsoft.Build.Tasks
{
	/*
	 * Class: MakeDir
	 *
	 * An MSBuild task that creates one or more directories.
	 *
	 */
	public class MakeDir : Task
	{
	    // The Required attribute indicates the following to MSBuild:
	    //	     - if the parameter is a scalar type, and it is not supplied, fail the build immediately
	    //	     - if the parameter is an array type, and it is not supplied, pass in an empty array
	    // In this case the parameter is an array type, so if a project fails to pass in a value for the 
            // Directories parameter, the task will get invoked, but this implementation will do nothing,
            // because the array will be empty.
		[Required]
            // Directories to create.
		public ITaskItem[] Directories
		{
			get
			{
				return directories;
			}

			set
			{
				directories = value;
			}
		}

		// The Output attribute indicates to MSBuild that the value of this property can be gathered after the
		// task has returned from Execute(), if the project has an <Output> tag under this task's element for 
		// this property.
		[Output]
		// A project may need the subset of the inputs that were actually created, so make that available here.
		public ITaskItem[] DirectoriesCreated
		{
			get
			{
				return directoriesCreated;
			}
		}

		private ITaskItem[] directories;
		private ITaskItem[] directoriesCreated;

		/// <summary>
		/// Execute is part of the Microsoft.Build.Framework.ITask interface.
		/// When it's called, any input parameters have already been set on the task's properties.
		/// It returns true or false to indicate success or failure.
		/// </summary>
		public override bool Execute()
		{
			ArrayList items = new ArrayList();
			foreach (ITaskItem directory in Directories)
			{
				// ItemSpec holds the filename or path of an Item
				if (directory.ItemSpec.Length > 0)
				{
					try
					{
						// Only log a message if we actually need to create the folder
						if (!Directory.Exists(directory.ItemSpec))
						{
							Log.LogMessage(MessageImportance.Normal, "Creating directory " + directory.ItemSpec);
							Directory.CreateDirectory(directory.ItemSpec);
						}

						// Add to the list of created directories
						items.Add(directory);
					}
					// If a directory fails to get created, log an error, but proceed with the remaining 
					// directories.
					catch (Exception ex)
					{
						if (ex is IOException
							|| ex is UnauthorizedAccessException
							|| ex is PathTooLongException
							|| ex is DirectoryNotFoundException
							|| ex is SecurityException)
						{
							Log.LogError("Error trying to create directory " + directory.ItemSpec + ". " + ex.Message);
						}
						else
						{
							throw;
						}
					}
				}
			}

			// Populate the "DirectoriesCreated" output items.
			directoriesCreated = (ITaskItem[])items.ToArray(typeof(ITaskItem));

			// Log.HasLoggedErrors is true if the task logged any errors -- even if they were logged 
			// from a task's constructor or property setter. As long as this task is written to always log an error
			// when it fails, we can reliably return HasLoggedErrors.
			return !Log.HasLoggedErrors;
		}
	}
}

コンストラクター

TaskLoggingHelper(IBuildEngine, String) TaskLoggingHelper(IBuildEngine, String) TaskLoggingHelper(IBuildEngine, String) TaskLoggingHelper(IBuildEngine, String)

メッセージをログに記録できるようにするためにタスク ファクトリで使用できるパブリック コンストラクター。Public constructor which can be used by task factories to assist them in logging messages.

TaskLoggingHelper(ITask) TaskLoggingHelper(ITask) TaskLoggingHelper(ITask) TaskLoggingHelper(ITask)

TaskLoggingHelper クラスの新しいインスタンスを初期化し、それを指定したタスク インスタンスに関連付けます。Initializes a new instance of the TaskLoggingHelper class and associates it with the specified task instance.

プロパティ

BuildEngine BuildEngine BuildEngine BuildEngine

タスクに関連付けられているビルド エンジンを取得します。Gets the build engine that is associated with the task.

HasLoggedErrors HasLoggedErrors HasLoggedErrors HasLoggedErrors

タスクがこのログ ヘルパー オブジェクトを介してエラーを記録したかどうかを示す値を取得します。Gets a value that indicates whether the task has logged any errors through this logging helper object.

HelpKeywordPrefix HelpKeywordPrefix HelpKeywordPrefix HelpKeywordPrefix

リソース名からヘルプ キーワードを作成するために使用するプレフィックスを取得または設定します。Gets or sets the prefix used to compose Help keywords from resource names.

TaskName TaskName TaskName TaskName

親タスクの名前を取得します。Gets the name of the parent task.

TaskResources TaskResources TaskResources TaskResources

ログ メソッドで使用されるカルチャ固有のリソースを取得または設定します。Gets or sets the culture-specific resources used by the logging methods.

メソッド

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
ExtractMessageCode(String, String) ExtractMessageCode(String, String) ExtractMessageCode(String, String) ExtractMessageCode(String, String)

指定した完全なメッセージ文字列からメッセージ コード プレフィックスを抽出します。Extracts the message code prefix from the given full message string.

FormatResourceString(String, Object[]) FormatResourceString(String, Object[]) FormatResourceString(String, Object[]) FormatResourceString(String, Object[])

指定したリソース文字列を読み込み、オプションとして、指定した引数を使用して文字列を書式指定します。Loads the specified resource string and optionally formats it using the given arguments.

FormatString(String, Object[]) FormatString(String, Object[]) FormatString(String, Object[]) FormatString(String, Object[])

指定した引数を使用して指定した文字列を書式指定します。Formats the given string using the given arguments.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetResourceMessage(String) GetResourceMessage(String) GetResourceMessage(String) GetResourceMessage(String)

タスク ライブラリのリソースからメッセージを取得します。Gets the message from resource in task library.

GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

InitializeLifetimeService は、リモート オブジェクトがアクティブのときに呼び出されます。InitializeLifetimeService is called when the remote object is activated.

このメソッドは、オブジェクトの有効期間の長さを決定します。This method will determine how long the lifetime for the object will be.

スレッド セーフ。Thread safe. ただし、InitializeLifetimeService と MarkAsInactive は、その順序でだけ呼び出す必要があります。両方呼び出すか、どちらも呼び出さず、呼び出しは 1 回だけです。However, InitializeLifetimeService and MarkAsInactive should only be called in that order, together or not at all, and no more than once.

LogCommandLine(MessageImportance, String) LogCommandLine(MessageImportance, String) LogCommandLine(MessageImportance, String) LogCommandLine(MessageImportance, String)

指定した重要度レベルを使用して、タスクの基になるツール、実行可能ファイル、またはシェル コマンドのためのコマンド ラインを記録します。Logs the command line for an underlying tool, executable file, or shell command of a task using the specified importance level.

LogCommandLine(String) LogCommandLine(String) LogCommandLine(String) LogCommandLine(String)

タスクの基になるツール、実行可能ファイル、またはシェル コマンドのためのコマンド ラインを記録します。Logs the command line for an underlying tool, executable file, or shell command of a task.

LogCriticalMessage(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogCriticalMessage(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogCriticalMessage(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogCriticalMessage(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[])

指定した文字列とその他のメッセージ詳細を使用して警告メッセージを記録します。Logs a critical message using the specified string and other message details.

スレッド セーフ。Thread safe.

LogError(String, Object[]) LogError(String, Object[]) LogError(String, Object[]) LogError(String, Object[])

指定したメッセージを使用してエラーを記録します。Logs an error with the specified message.

LogError(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogError(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogError(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogError(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[])

指定したメッセージおよびその他のエラー詳細を使用してエラーを記録します。Logs an error using the specified message and other error details.

LogErrorFromException(Exception) LogErrorFromException(Exception) LogErrorFromException(Exception) LogErrorFromException(Exception)

指定した例外からのメッセージを使用してエラーを記録します。Logs an error using the message from the given exception.

LogErrorFromException(Exception, Boolean) LogErrorFromException(Exception, Boolean) LogErrorFromException(Exception, Boolean) LogErrorFromException(Exception, Boolean)

指定した例外からのメッセージおよびオプションでスタック トレースを使用して、エラーを記録します。Logs an error using the message, and optionally the stack trace, from the given exception.

LogErrorFromException(Exception, Boolean, Boolean, String) LogErrorFromException(Exception, Boolean, Boolean, String) LogErrorFromException(Exception, Boolean, Boolean, String) LogErrorFromException(Exception, Boolean, Boolean, String)

指定した例外およびすべての内部例外からのメッセージ、およびオプションでスタック トレースを使用して、エラーを記録します。Logs an error using the message, and optionally the stack-trace from the given exception and any inner exceptions.

LogErrorFromResources(String, Object[]) LogErrorFromResources(String, Object[]) LogErrorFromResources(String, Object[]) LogErrorFromResources(String, Object[])

指定したリソース文字列を使用してエラーを記録します。Logs an error using the specified resource string.

LogErrorFromResources(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogErrorFromResources(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogErrorFromResources(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogErrorFromResources(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[])

指定したリソース文字列およびその他のエラー詳細を使用してエラーを記録します。Logs an error using the specified resource string and other error details.

LogErrorWithCodeFromResources(String, Object[]) LogErrorWithCodeFromResources(String, Object[]) LogErrorWithCodeFromResources(String, Object[]) LogErrorWithCodeFromResources(String, Object[])

指定したリソース文字列を使用して、エラーとエラー コードを記録します。Logs an error with an error code using the specified resource string.

LogErrorWithCodeFromResources(String, String, Int32, Int32, Int32, Int32, String, Object[]) LogErrorWithCodeFromResources(String, String, Int32, Int32, Int32, Int32, String, Object[]) LogErrorWithCodeFromResources(String, String, Int32, Int32, Int32, Int32, String, Object[]) LogErrorWithCodeFromResources(String, String, Int32, Int32, Int32, Int32, String, Object[])

指定したリソース文字列およびその他のエラー詳細を使用してエラーを記録します。Logs an error using the specified resource string and other error details.

LogExternalProjectFinished(String, String, String, Boolean) LogExternalProjectFinished(String, String, String, Boolean) LogExternalProjectFinished(String, String, String, Boolean) LogExternalProjectFinished(String, String, String, Boolean)

カスタムの ExternalProjectFinishedEventArgs ビルド イベントを記録する場合に使用します。Helps log the custom ExternalProjectFinishedEventArgs build event.

LogExternalProjectStarted(String, String, String, String) LogExternalProjectStarted(String, String, String, String) LogExternalProjectStarted(String, String, String, String) LogExternalProjectStarted(String, String, String, String)

カスタムの ExternalProjectStartedEventArgs ビルド イベントを記録する場合に使用します。Helps log the custom ExternalProjectStartedEventArgs build event.

LogMessage(MessageImportance, String, Object[]) LogMessage(MessageImportance, String, Object[]) LogMessage(MessageImportance, String, Object[]) LogMessage(MessageImportance, String, Object[])

指定した文字列および重要度を使用してメッセージを記録します。Logs a message with the specified string and importance.

LogMessage(String, Object[]) LogMessage(String, Object[]) LogMessage(String, Object[]) LogMessage(String, Object[])

指定した文字列を使用してメッセージを記録します。Logs a message with the specified string.

LogMessage(String, String, Object[], String, String, Int32, Int32, Int32, Int32, MessageImportance, String) LogMessage(String, String, Object[], String, String, Int32, Int32, Int32, Int32, MessageImportance, String) LogMessage(String, String, Object[], String, String, Int32, Int32, Int32, Int32, MessageImportance, String) LogMessage(String, String, Object[], String, String, Int32, Int32, Int32, Int32, MessageImportance, String)

指定した文字列とその他のメッセージ詳細を使用してメッセージを記録します。Logs a message using the specified string and other message details.

スレッド セーフ。Thread safe.

LogMessageFromResources(MessageImportance, String, Object[]) LogMessageFromResources(MessageImportance, String, Object[]) LogMessageFromResources(MessageImportance, String, Object[]) LogMessageFromResources(MessageImportance, String, Object[])

指定したリソース文字列および重要度を使用してメッセージを記録します。Logs a message with the specified resource string and importance.

LogMessageFromResources(String, Object[]) LogMessageFromResources(String, Object[]) LogMessageFromResources(String, Object[]) LogMessageFromResources(String, Object[])

指定したリソース文字列を使用してメッセージを記録します。Logs a message with the specified resource string.

LogMessageFromText(String, MessageImportance) LogMessageFromText(String, MessageImportance) LogMessageFromText(String, MessageImportance) LogMessageFromText(String, MessageImportance)

指定したテキスト行からのエラー メッセージまたは警告を記録します。Logs an error message or warning from the given line of text.

LogMessagesFromFile(String) LogMessagesFromFile(String) LogMessagesFromFile(String) LogMessagesFromFile(String)

指定したファイル内のそれぞれのテキスト行に対して、エラー、警告、およびメッセージを記録します。Logs errors, warnings, and messages for each line of text in the given file.

LogMessagesFromFile(String, MessageImportance) LogMessagesFromFile(String, MessageImportance) LogMessagesFromFile(String, MessageImportance) LogMessagesFromFile(String, MessageImportance)

指定したファイル内のそれぞれのテキスト行に対して、エラー、警告、およびメッセージを記録します。Logs errors, warnings, and messages for each line of text in the given file. メッセージの重要度も記録します。Also logs the importance of messages.

LogMessagesFromStream(TextReader, MessageImportance) LogMessagesFromStream(TextReader, MessageImportance) LogMessagesFromStream(TextReader, MessageImportance) LogMessagesFromStream(TextReader, MessageImportance)

指定したストリームからのエラー メッセージまたは警告を記録します。Logs an error message or warning from the given stream.

LogWarning(String, Object[]) LogWarning(String, Object[]) LogWarning(String, Object[]) LogWarning(String, Object[])

指定したメッセージを使用して警告を記録します。Logs a warning with the specified message.

LogWarning(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogWarning(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogWarning(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogWarning(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[])

指定したメッセージおよびその他の警告詳細を使用して警告を記録します。Logs a warning using the specified message and other warning details.

LogWarningFromException(Exception) LogWarningFromException(Exception) LogWarningFromException(Exception) LogWarningFromException(Exception)

指定した例外からのメッセージを使用して警告を記録します。Logs a warning using the message from the specified exception.

LogWarningFromException(Exception, Boolean) LogWarningFromException(Exception, Boolean) LogWarningFromException(Exception, Boolean) LogWarningFromException(Exception, Boolean)

指定した例外からのメッセージおよびオプションでスタック トレースを使用して、警告を記録します。Logs a warning using the message, and optionally the stack trace, from the given exception.

LogWarningFromResources(String, Object[]) LogWarningFromResources(String, Object[]) LogWarningFromResources(String, Object[]) LogWarningFromResources(String, Object[])

指定したリソース文字列を使用して警告を記録します。Logs a warning using the specified resource string.

LogWarningFromResources(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogWarningFromResources(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogWarningFromResources(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[]) LogWarningFromResources(String, String, String, String, Int32, Int32, Int32, Int32, String, Object[])

指定したリソース文字列およびその他の警告詳細を使用して警告を記録します。Logs a warning using the specified resource string and other warning details.

LogWarningWithCodeFromResources(String, Object[]) LogWarningWithCodeFromResources(String, Object[]) LogWarningWithCodeFromResources(String, Object[]) LogWarningWithCodeFromResources(String, Object[])

指定したリソース文字列を使用して、警告と警告コードを記録します。Logs a warning with a warning code using the specified resource string.

LogWarningWithCodeFromResources(String, String, Int32, Int32, Int32, Int32, String, Object[]) LogWarningWithCodeFromResources(String, String, Int32, Int32, Int32, Int32, String, Object[]) LogWarningWithCodeFromResources(String, String, Int32, Int32, Int32, Int32, String, Object[]) LogWarningWithCodeFromResources(String, String, Int32, Int32, Int32, Int32, String, Object[])

指定したリソース文字列およびその他の警告詳細を使用して、警告と警告コードを記録します。Logs a warning with a warning code using the specified resource string and other warning details.

MarkAsInactive() MarkAsInactive() MarkAsInactive() MarkAsInactive()

不要になったことを、この TaskLoggingHelper に通知します。Notifies this TaskLoggingHelper that it is no longer needed.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)

適用対象