Compartir a través de


SolutionBuild.BuildState (Propiedad)

Indica si se ha iniciado alguna compilación en la sesión del entorno actual, si hay alguna compilación en curso o si ha finalizado alguna compilación.

Espacio de nombres:  EnvDTE
Ensamblado:  EnvDTE (en EnvDTE.dll)

Sintaxis

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

Valor de propiedad

Tipo: EnvDTE.vsBuildState
Valor vsBuildState que representa el estado de la operación de compilación.

Comentarios

BuildState contiene vsBuildStateNotStarted, de modo que se puedan detectar las condiciones de carrera (condiciones que se producen cuando se inicia el entorno para realizar una compilación y, a continuación, se comprueba el estado de compilación antes de que ésta haya comenzado realmente). La comprobación de si vsBuildState es igual a vsBuildStateNotStarted permite evitar esta situación. También permite determinar si el valor de la propiedad LastBuildInfo es válido.

Ejemplos

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

Seguridad de .NET Framework

Vea también

Referencia

SolutionBuild Interfaz

EnvDTE (Espacio de nombres)