Condividi tramite


Proprietà SolutionBuild.BuildState

Ottiene un valore che indica se una compilazione è stata avviata nella sessione corrente dell'ambiente, se una compilazione è attualmente in corso o se una compilazione è stata completata.

Spazio dei nomi:  EnvDTE
Assembly:  EnvDTE (in EnvDTE.dll)

Sintassi

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

Valore proprietà

Tipo: EnvDTE.vsBuildState
Valore vsBuildState che rappresenta lo stato dell'operazione di compilazione.

Note

Il campo vsBuildStateNotStarted della proprietà BuildState consente di individuare una race condition, ovvero una condizione che si determina quando si avvia l'ambiente per eseguire una compilazione e si controlla lo stato di compilazione prima ancora che sia iniziata. Effettuando un controllo per vedere se l'oggetto vsBuildState è uguale al campo vsBuildStateNotStarted si evita una situazione di questo tipo. Inoltre, tale controllo consente di determinare se il valore della proprietà LastBuildInfo è valido.

Esempi

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);
    }
}

Sicurezza di .NET Framework

Vedere anche

Riferimenti

SolutionBuild Interfaccia

Spazio dei nomi EnvDTE