共用方式為


SolutionBuild.BuildState 屬性

取得目前的環境工作階段是否曾經開始組建、是否有組建正在進行中、是否有組建已完成。

命名空間:  EnvDTE
組件:  EnvDTE (在 EnvDTE.dll 中)

語法

'宣告
ReadOnly Property BuildState As vsBuildState
vsBuildState BuildState { get; }
property vsBuildState BuildState {
    vsBuildState get ();
}
abstract BuildState : vsBuildState
function get BuildState () : vsBuildState

屬性值

型別:EnvDTE.vsBuildState
vsBuildState 值,表示組建作業的狀態。

備註

BuildState 具有 vsBuildStateNotStarted,因此可偵測出競爭的情況,也就是當您啟動環境進行建置時,在實際開始建置之前就檢查其建置狀態。 若要避免這種情形,可檢查 vsBuildState 是否等於 vsBuildStateNotStarted。 也可以判斷 LastBuildInfo 屬性值是否有效。

範例

public void CodeExample(DTE2 dte)
{  
    try
    {
        SolutionBuild sb = dte.Solution.SolutionBuild;
        SolutionConfiguration sc = sb.ActiveConfiguration;
        vsBuildState vsBS;
        string msg = "Return relative path to startup projects: ";
        foreach (String s in (Array)sb.StartupProjects)
        {
            msg += "\n   " + s;
        }
        msg += "\nSolutionConfiguration: " + sc.Name;
        vsBS = sb.BuildState;
        if (vsBS == vsBuildState.vsBuildStateDone)
            msg += "\nA build has occurred.";
        else if (vsBS == vsBuildState.vsBuildStateInProgress)
            msg += "\nA build is in progress.";
        else msg += "\nA build has not occurred.";

        MessageBox.Show(msg);
    }
    catch(Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

.NET Framework 安全性

請參閱

參考

SolutionBuild 介面

EnvDTE 命名空間