Export (0) Print
Expand All

IVsSolutionBuildManager2 Interface

Allows solutions to manage configuration information.

Namespace:  Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop (in Microsoft.VisualStudio.Shell.Interop.dll)

public interface IVsSolutionBuildManager2 : IVsSolutionBuildManager

The IVsSolutionBuildManager2 type exposes the following members.

Public methodAdviseUpdateSolutionEventsAdds the caller to the list of listeners for IVsUpdateSolutionEvents2 events.
Public methodCalculateProjectDependenciesForces dependencies to be recalculated.
Public methodCanCancelUpdateSolutionConfigurationEnables or disables the Cancel menu item.
Public methodCancelUpdateSolutionConfigurationCancels the update solution configuration.
Public methodDebugLaunchLaunches the startup project specified by the solution as the debug project.
Public methodFindActiveProjectCfgDetermines the project configuration that is currently active.
Public methodget_CodePageObsolete method. Do not use.
Public methodget_IsDebugObsolete method. Do not use.
Public methodget_StartupProjectProgrammatic method to get the startup project that will be run when the F5 key is pressed.
Public methodGetProjectDependenciesReturns a list of projects that the given hierarchy depends on.
Public methodput_CodePageObsolete method. Do not use.
Public methodput_IsDebugObsolete method. Do not use.
Public methodQueryBuildManagerBusyDetermines if the build manager is busy.
Public methodQueryDebugLaunchDetermines whether or not the F5 (debug start) key should be enabled.
Public methodQueryProjectDependencyChecks to see if one project is dependent upon another.
Public methodSaveDocumentsBeforeBuildA project calls this method to ensure that the buildable/runnable components of projects are saved before starting build or run operations.
Public methodset_StartupProjectSets the startup project that will be run when the F5 key is pressed.
Public methodStartSimpleUpdateProjectConfigurationThis is a variant of the update command that allows you to build, clean, deploy, or launch a single project configuration.
Public methodStartSimpleUpdateSolutionConfigurationBuilds, cleans, or deploys a list of solutions.
Public methodStartUpdateProjectConfigurationsBuilds, cleans, or deploys a list of projects.
Public methodStartUpdateSpecificProjectConfigurationsUse this method to maintain total control of a build process.
Public methodUnadviseUpdateSolutionEventsRemoves the caller from the list of listeners for IVsUpdateSolutionEvents2 events.
Public methodUpdateSolutionConfigurationIsActiveChecks for any build, clean, or deploy action in progress.

Implemented by the environment, IVsSolutionBuildManager and IVsSolutionBuildManager2 orchestrate the building of projects within the solution. The solution build manager manages the set of dependencies between projects at the project level and will build those projects in the correct order based on those dependencies.

Solution build dependencies are set using the Solution Configuration property pages. The projects themselves supply the build system with information relating to their own items and the dependencies between those items.

Project build dependencies are set using the Project Configuration property pages. For more information relating to Property Pages and setting configurations, see Property Pages and Managing Configuration Options.

Other callers of this interface would be packages providing add-ins that want to control the build process and programmatically cause some build operations to occur at specific times. For example, the debug component of the environment calls QueryDebugLaunch to programmatically enable and disable the F5 key, and DebugLaunch to start the debug process that was set as the solution startup project.

Notes to Implementers

Implemented by the environment.

Notes to Callers

Called by the environment or a parent project that needs to manage build operations for child (nested) projects. There could also be other interested packages that want to track build events, so they would call AdviseUpdateSolutionEvents to listen for and react to those build events.

You can obtain an IVsSolutionBuildManager2 interface from the SVsSolutionBuildManager service.

© 2015 Microsoft