ProjectStartedEventArgsとは? わかりやすく解説

ProjectStartedEventArgs クラス

メモ : このクラスは、.NET Framework version 2.0新しく追加されたものです。

ProjectStarted イベントデータ提供します

名前空間: Microsoft.Build.Framework
アセンブリ: Microsoft.Build.Framework (microsoft.build.framework.dll 内)
構文構文

<SerializableAttribute> _
Public Class ProjectStartedEventArgs
    Inherits BuildStatusEventArgs
Dim instance As ProjectStartedEventArgs
[SerializableAttribute] 
public class ProjectStartedEventArgs : BuildStatusEventArgs
[SerializableAttribute] 
public ref class ProjectStartedEventArgs :
 public BuildStatusEventArgs
/** @attribute SerializableAttribute() */ 
public class ProjectStartedEventArgs extends
 BuildStatusEventArgs
SerializableAttribute 
public class ProjectStartedEventArgs extends
 BuildStatusEventArgs
使用例使用例

ビルド イベント応答する基本 logger作成する方法次の例に示します

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

namespace MyLoggers
{
    // This logger will derive from the Microsoft.Build.Utilities.Logger
 class,
    // which provides it with getters and setters for Verbosity and
 Parameters,
    // and a default empty Shutdown() implementation.
    public class BasicFileLogger : Logger
    {
        /// <summary>
        /// Initialize is guaranteed to be called by MSBuild at the
 start of the build
        /// before any events are raised.
        /// </summary>
        public override void Initialize(IEventSource
 eventSource)
        {
            // The name of the log file should be passed as the first
 item in the
            // "parameters" specification in the /logger switch.
  It is required
            // to pass a log file to this logger. Other loggers may
 have zero or more than 
            // one parameters.
            if (null == Parameters)
            {
                throw new LoggerException("Log file was not
 set.");
            }
            string[] parameters = Parameters.Split(';');
            
            string logFile = parameters[0];
            if (String.IsNullOrEmpty(logFile))
            {
                throw new LoggerException("Log file was not
 set.");
            }
            
            if (parameters.Length > 1)
            {
                throw new LoggerException("Too many parameters
 passed.");
            }
            
            try
            {
                // Open the file
                this.streamWriter = new StreamWriter(logFile);
            }
            catch (Exception ex)
            {
                if
                (
                    ex is UnauthorizedAccessException
                    || ex is ArgumentNullException
                    || ex is PathTooLongException
                    || ex is DirectoryNotFoundException
                    || ex is NotSupportedException
                    || ex is ArgumentException
                    || ex is SecurityException
                    || ex is IOException
                )
                {
                    throw new LoggerException("Failed to
 create log file: " + ex.Message);
                }
                else
                {
                    // Unexpected failure
                    throw;
                }
            }

            // For brevity, we'll only register for certain event types.
 Loggers can also
            // register to handle TargetStarted/Finished and other events.
            eventSource.ProjectStarted += new ProjectStartedEventHandler(eventSource_ProjectStarted);
            eventSource.TaskStarted += new TaskStartedEventHandler(eventSource_TaskStarted);
            eventSource.MessageRaised += new BuildMessageEventHandler(eventSource_MessageRaised);
            eventSource.WarningRaised += new BuildWarningEventHandler(eventSource_WarningRaised);
            eventSource.ErrorRaised += new BuildErrorEventHandler(eventSource_ErrorRaised);
            eventSource.ProjectFinished += new ProjectFinishedEventHandler(eventSource_ProjectFinished);
        }

        void eventSource_ErrorRaised(object sender, BuildErrorEventArgs
 e)
        {
            // BuildErrorEventArgs adds LineNumber, ColumnNumber, File,
 amongst other parameters
            string line = String.Format(": ERROR {0}({1},{2}):
 ", e.File, e.LineNumber, e.ColumnNumber);
            WriteLineWithSenderAndMessage(line, e);
        }
        
        void eventSource_WarningRaised(object sender, BuildWarningEventArgs
 e)
        {
            // BuildWarningEventArgs adds LineNumber, ColumnNumber,
 File, amongst other parameters
            string line = String.Format(": Warning {0}({1},{2}):
 ", e.File, e.LineNumber, e.ColumnNumber);
            WriteLineWithSenderAndMessage(line, e);
        }

        void eventSource_MessageRaised(object sender, BuildMessageEventArgs
 e)
        {
            // BuildMessageEventArgs adds Importance to BuildEventArgs
            // Let's take account of the verbosity setting we've been
 passed in deciding whether to log the message
            if ((e.Importance == MessageImportance.High &&
 IsVerbosityAtLeast(LoggerVerbosity.Minimal))
                || (e.Importance == MessageImportance.Normal && IsVerbosityAtLeast(LoggerVerbosity.Normal))
                || (e.Importance == MessageImportance.Low && IsVerbosityAtLeast(LoggerVerbosity.Detailed))
                
                )
            {
                WriteLineWithSenderAndMessage(String.Empty, e);
            }
        }

        void eventSource_TaskStarted(object sender, TaskStartedEventArgs
 e)
        {
            // TaskStartedEventArgs adds ProjectFile, TaskFile, TaskName
            // To keep this log clean, this logger will ignore these
 events.
        }
        
        void eventSource_ProjectStarted(object sender, ProjectStartedEventArgs
 e)
        {
            // ProjectStartedEventArgs adds ProjectFile, TargetNames
            // Just the regular message string is good enough here,
 so just display that.
            WriteLine(String.Empty, e);
            indent++;
        }

        void eventSource_ProjectFinished(object sender, ProjectFinishedEventArgs
 e)
        {
            // The regular message string is good enough here too.
            indent--;
            WriteLine(String.Empty, e);
        }
        
        /// <summary>
        /// Write a line to the log, adding the SenderName and Message
        /// (these parameters are on all MSBuild event argument objects)
        /// </summary>
        private void WriteLineWithSenderAndMessage(string
 line, BuildEventArgs e)
        {
            if (0 == String.Compare(e.SenderName, "MSBuild",
 true /*ignore case*/))
            {
                // Well, if the sender name is MSBuild, let's leave
 it out for prettiness
                WriteLine(line, e);
            }
            else
            {
                WriteLine(e.SenderName + ": " + line, e);
            }
        }
        
        /// <summary>
        /// Just write a line to the log
        /// </summary>
        private void WriteLine(string
 line, BuildEventArgs e)
        {
            for (int i = indent; i > 0;
 i--)
            {
                streamWriter.Write("\t");
            }
            streamWriter.WriteLine(line + e.Message);
        }
        
        /// <summary>
        /// Shutdown() is guaranteed to be called by MSBuild at the
 end of the build, after all 
        /// events have been raised.
        /// </summary>
        public override void Shutdown()
        {
            // Done logging, let go of the file
            streamWriter.Close();
        }

        private StreamWriter streamWriter;
        private int indent;
    }
}
継承階層継承階層
System.Object
   System.EventArgs
     Microsoft.Build.Framework.BuildEventArgs
       Microsoft.Build.Framework.BuildStatusEventArgs
        Microsoft.Build.Framework.ProjectStartedEventArgs
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
ProjectStartedEventArgs メンバ
Microsoft.Build.Framework 名前空間

ProjectStartedEventArgs コンストラクタ ()

メモ : このコンストラクタは、.NET Framework version 2.0新しく追加されたものです。

ProjectStartedEventArgs クラス新しインスタンス初期化します。

名前空間: Microsoft.Build.Framework
アセンブリ: Microsoft.Build.Framework (microsoft.build.framework.dll 内)
構文構文

Dim instance As New ProjectStartedEventArgs
protected ProjectStartedEventArgs ()
protected:
ProjectStartedEventArgs ()
protected ProjectStartedEventArgs ()
protected function ProjectStartedEventArgs
 ()
.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
ProjectStartedEventArgs クラス
ProjectStartedEventArgs メンバ
Microsoft.Build.Framework 名前空間

ProjectStartedEventArgs コンストラクタ

ProjectStartedEventArgs クラス新しインスタンス初期化します。
オーバーロードの一覧オーバーロードの一覧

名前 説明
ProjectStartedEventArgs () ProjectStartedEventArgs クラス新しインスタンス初期化します。
ProjectStartedEventArgs (String, String, String, String, IEnumerable, IEnumerable) 値を指定してProjectStartedEventArgs クラス新しインスタンス初期化します。
参照参照

関連項目

ProjectStartedEventArgs クラス
ProjectStartedEventArgs メンバ
Microsoft.Build.Framework 名前空間

ProjectStartedEventArgs コンストラクタ (String, String, String, String, IEnumerable, IEnumerable)

メモ : このコンストラクタは、.NET Framework version 2.0新しく追加されたものです。

値を指定して、ProjectStartedEventArgs クラス新しインスタンス初期化します。

名前空間: Microsoft.Build.Framework
アセンブリ: Microsoft.Build.Framework (microsoft.build.framework.dll 内)
構文構文

Public Sub New ( _
    message As String, _
    helpKeyword As String, _
    projectFile As String, _
    targetNames As String, _
    properties As IEnumerable, _
    items As IEnumerable _
)
Dim message As String
Dim helpKeyword As String
Dim projectFile As String
Dim targetNames As String
Dim properties As IEnumerable
Dim items As IEnumerable

Dim instance As New ProjectStartedEventArgs(message,
 helpKeyword, projectFile, targetNames, properties, items)
public ProjectStartedEventArgs (
    string message,
    string helpKeyword,
    string projectFile,
    string targetNames,
    IEnumerable properties,
    IEnumerable items
)
public:
ProjectStartedEventArgs (
    String^ message, 
    String^ helpKeyword, 
    String^ projectFile, 
    String^ targetNames, 
    IEnumerable^ properties, 
    IEnumerable^ items
)
public ProjectStartedEventArgs (
    String message, 
    String helpKeyword, 
    String projectFile, 
    String targetNames, 
    IEnumerable properties, 
    IEnumerable items
)
public function ProjectStartedEventArgs (
    message : String, 
    helpKeyword : String, 
    projectFile : String, 
    targetNames : String, 
    properties : IEnumerable, 
    items : IEnumerable
)

パラメータ

message

イベントテキスト

helpKeyword

イベント関連付けられているヘルプ キーワード。

projectFile

プロジェクト ファイル名。

targetNames

ビルドするターゲット

properties

プロパティの一覧。

items

アイテムの一覧。

.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
ProjectStartedEventArgs クラス
ProjectStartedEventArgs メンバ
Microsoft.Build.Framework 名前空間

ProjectStartedEventArgs プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ HelpKeyword  イベントヘルプ キーワードを取得します。 ( BuildEventArgs から継承されます。)
パブリック プロパティ Items イベントアイテムの一覧を取得します
パブリック プロパティ Message  イベントに関するメッセージ取得します。 ( BuildEventArgs から継承されます。)
パブリック プロパティ ProjectFile イベント関連付けられているプロジェクト ファイル取得します
パブリック プロパティ Properties イベントプロパティの一覧を取得します
パブリック プロパティ SenderName  イベントの発生元の Object の名前を取得します。 ( BuildEventArgs から継承されます。)
パブリック プロパティ TargetNames プロジェクトビルドされるターゲットの一覧を取得します
パブリック プロパティ ThreadId  イベントの発生元のスレッドを示す、整数識別子取得します。 ( BuildEventArgs から継承されます。)
パブリック プロパティ Timestamp  イベント発生した時刻DateTime として取得します。 ( BuildEventArgs から継承されます。)
参照参照

関連項目

ProjectStartedEventArgs クラス
Microsoft.Build.Framework 名前空間

ProjectStartedEventArgs メソッド


ProjectStartedEventArgs メンバ

ProjectStarted イベントデータ提供します

ProjectStartedEventArgs データ型公開されるメンバを以下の表に示します


パブリック コンストラクタパブリック コンストラクタ
プロテクト コンストラクタプロテクト コンストラクタ
  名前 説明
プロテクト メソッド ProjectStartedEventArgs オーバーロードされますProjectStartedEventArgs クラス新しインスタンス初期化します。
パブリック プロパティパブリック プロパティ
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

ProjectStartedEventArgs クラス
Microsoft.Build.Framework 名前空間


このページでは「.NET Framework クラス ライブラリ リファレンス」からProjectStartedEventArgsを検索した結果を表示しています。
Weblioに収録されているすべての辞書からProjectStartedEventArgsを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からProjectStartedEventArgs を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「ProjectStartedEventArgs」の関連用語

ProjectStartedEventArgsのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



ProjectStartedEventArgsのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS