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
파생

예제

다음 예제에서는 하나 이상의 디렉터리를 만드는 작업에 대 한 코드를 보여줍니다.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 생성자입니다.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는 해당 순서대로 함께 한 번만 호출되거나 아예 호출되지 않아야 합니다.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)

적용 대상