We recommend using Visual Studio 2017
This documentation is archived and is not being maintained.

VCConfiguration Interface

The VCConfiguration object programmatically accesses the properties in the General property page of a project's Property Pages dialog box. This object also allows access to the tools used to build this configuration.

Namespace:  Microsoft.VisualStudio.VCProjectEngine
Assembly:  Microsoft.VisualStudio.VCProjectEngine (in Microsoft.VisualStudio.VCProjectEngine.dll)

public interface VCConfiguration

The VCConfiguration type exposes the following members.

Public propertyATLMinimizesCRunTimeLibraryUsageCauses ATL to link to the C runtime libraries statically to minimize dependencies; requires that useOfATL property is set.
Public propertyBuildLogFileSets or gets the name of the html log file.
Public propertyCharacterSetGets or sets a value that tells the compiler to use the specified character set.
Public propertyConfigurationNameGets or sets the project configuration to be built.
Public propertyConfigurationTypeGets or sets the type of output this configuration generates.
Public propertyDebugSettingsGets a pointer to the object containing the debug settings information for the selected configuration.
Public propertyDeleteExtensionsOnCleanGets or sets which files in the intermediate directory to delete on clean or rebuild.
Public propertyDeploymentToolGets the deployment tool.
Public propertyDEPRECATED1Infrastructure. Microsoft Internal Use Only.
Public propertyEnableManagedIncrementalBuildDeprecated.
Public propertyExcludeBucketsSets or gets which tool buckets to ignore during a build.
Public propertyFileToolsLists the available tools that operate on files.
Public propertyImportLibraryGets which import library to generate or reports which import library will be generated by the configuration. ImportLibrary exposes the functionality of the /IMPLIB (Name Import Library) linker option.
Public propertyInheritedPropertySheetsSets or gets the property sheets for a config.
Public propertyIntermediateDirectoryGets or sets a relative path to the intermediate file directory; can include environment variables.
Public propertyIntrinsicPropertySheetsMicrosoft internal use only. Do not use.
Public propertyManagedExtensionsGets or sets a configuration that uses Visual C++. ManagedExtensions exposes the functionality of the C++ compiler's /clr (Common Language Runtime Compilation) option.
Public propertyNameGets or sets the name of the object.
Public propertyOutputDirectoryGets or sets the directory in which to place output. The default directory is the project directory.
Public propertyPerUserRedirectionGets a value that indicates whether COM registration for the current configuration is per-user or per-computer.
Public propertyPlatformGets the platform for which this configuration is being built.
Public propertyPrimaryOutputGets the primary output from building this configuration.
Public propertyProgramDatabaseGets the program database, if any, that the configuration generates.
Public propertyprojectGets the VCProject associated with the VCConfiguration.
Public propertyPropertySheetsGets all property sheets for the project.
Public propertyRegisterOutputGets a value indicating whether the configuration registers the primary output of this build.
Public propertyRulesGets a collection of IVCRulePropertyStorage objects that can modify to project-level properties and default item metadata defined in this property sheet.
Public propertySatelliteDLLsGets a semicolon-delimited list of all satellite DLLs that this configuration generates.
Public propertySqlAssemblyOwnerSets or gets the SQL assembly owner.
Public propertySqlDebugScriptGets or sets the name of the SQL debug script.
Public propertySqlDeploySourceSets or gets whether to include source files when deploying a SQL assembly.
Public propertySqlPermissionLevelGets or sets the SQL permission level for the project.
Public propertySqlPostDeployScriptSets or gets the script for post SQL deploy activity.
Public propertySqlPreDeployScriptSets or gets the script for per SQL deploy activity.
Public propertyToolsGets the available tools for the configuration.
Public propertyUpToDateGets a value indicating whether the current configuration's build state is up to date.
Public propertyuseOfATLGets or sets a value indicating how ATL is used by the configuration.
Public propertyuseOfMfcGets or sets how MFC is used by the configuration.
Public propertyVCProjectEngineGets a pointer to the project engine.
Public propertyWholeProgramOptimizationGets or sets cross-module optimizations by delaying code generation to link time. WholeProgramOptimization exposes the functionality of the compiler's /GL (Whole Program Optimization) option.

Public methodAddPropertySheetAdds a property sheet to the collection of property sheets directly imported by a configuration.
Public methodBuildBuilds the current configuration.
Public methodBuildAndCallbackBegins an asynchronous build of this configuration.
Public methodBuildWithPropertyBegins an asynchronous build with a given property set to some value beyond what is defined in the project file.
Public methodBuildWithPropertySheetUsed to set properties for builds.
Public methodBuildWithPropertySheetPathSpecifies a property sheet search path.
Public methodCleanInvokes the Clean command for the current configuration.
Public methodClearToolPropertyClears the tool property value.
Public methodCopyToCopies the current configuration.
Public methodDeleteInfrastructure. Microsoft Internal Use Only.
Public methodDeployDeploys the project.
Public methodEvaluateEvaluates the value of a project model or environment macro. See Macros for Build Commands and Properties for more information about these macros.
Public methodGetEvaluatedPropertyValue
Public methodGetUnevaluatedPropertyValue
Public methodGetVCService
Public methodIsBuildActionSupportedIndicates whether a specified type of build applies to the currrent project configuration.
Public methodIsUpToDate
Public methodMatchNameMatches a specified name to the name of a collection item.
Public methodMovePropertySheetMoves a property sheet one position before or after the other property sheets directly imported by this configuration. Position is based on the evaluation order of the property sheets.
Public methodRebuildRebuilds the current configuration.
Public methodRelinkRelink the project.
Public methodRemovePropertySheetRemoves a property sheet from the collection of property sheets directly imported by a configuration.
Public methodStopBuildCancels the build currently in progress on the specified configuration.
Public methodWaitForBuildSuspends processing until build is complete.

For more information, see Working with Project Properties.