Share via


ProjectConfig Class

This class and its members are reserved for internal use and are not intended to be used in your code.

This API is not CLS-compliant. 

Inheritance Hierarchy

System..::..Object
  Microsoft.VisualStudio.Data.Tools.Package.Project.Internal..::..ProjectConfig
    Microsoft.VisualStudio.Data.Tools.Package.Project..::..DatabaseProjectConfig

Namespace:  Microsoft.VisualStudio.Data.Tools.Package.Project.Internal
Assembly:  Microsoft.VisualStudio.Data.Tools.Package (in Microsoft.VisualStudio.Data.Tools.Package.dll)

Syntax

'Declaration
<CLSCompliantAttribute(False)> _
<ComVisibleAttribute(True)> _
Public MustInherit Class ProjectConfig _
    Implements IVsProjectCfg2, IVsProjectFlavorCfg, IVsDebuggableProjectCfg, IVsProjectCfg,  _
    IVsCfg, ISpecifyPropertyPages, IVsSpecifyProjectDesignerPages, IVsCfgBrowseObject, IVsBrowseObject,  _
    IInternalExtenderProvider
'Usage
Dim instance As ProjectConfig
[CLSCompliantAttribute(false)]
[ComVisibleAttribute(true)]
public abstract class ProjectConfig : IVsProjectCfg2, 
    IVsProjectFlavorCfg, IVsDebuggableProjectCfg, IVsProjectCfg, IVsCfg, ISpecifyPropertyPages, 
    IVsSpecifyProjectDesignerPages, IVsCfgBrowseObject, IVsBrowseObject, IInternalExtenderProvider
[CLSCompliantAttribute(false)]
[ComVisibleAttribute(true)]
public ref class ProjectConfig abstract : IVsProjectCfg2, 
    IVsProjectFlavorCfg, IVsDebuggableProjectCfg, IVsProjectCfg, IVsCfg, ISpecifyPropertyPages, 
    IVsSpecifyProjectDesignerPages, IVsCfgBrowseObject, IVsBrowseObject, IInternalExtenderProvider
[<AbstractClassAttribute>]
[<CLSCompliantAttribute(false)>]
[<ComVisibleAttribute(true)>]
type ProjectConfig =  
    class
        interface IVsProjectCfg2
        interface IVsProjectFlavorCfg
        interface IVsDebuggableProjectCfg
        interface IVsProjectCfg
        interface IVsCfg
        interface ISpecifyPropertyPages
        interface IVsSpecifyProjectDesignerPages
        interface IVsCfgBrowseObject
        interface IVsBrowseObject
        interface IInternalExtenderProvider
    end
public abstract class ProjectConfig implements IVsProjectCfg2, IVsProjectFlavorCfg, IVsDebuggableProjectCfg, IVsProjectCfg, IVsCfg, ISpecifyPropertyPages, IVsSpecifyProjectDesignerPages, IVsCfgBrowseObject, IVsBrowseObject, IInternalExtenderProvider

The ProjectConfig type exposes the following members.

Properties

  Name Description
Public property CancelReasonImpl Used to indicate the reason why the database project node canceled the Build operation
Public property ConfigName Gets or sets {insert text here}.
Public property ConfigurationProperties Gets {insert text here}.
Public property ExtenderCATID TSDATA : \\cpvsbuild\drops\orcas\main\raw\20402.00\sources\wizard\vsdesigner\designer\microsoft\VisualStudio\Editors\PropertyPages\AutomationExtenderManager.cs reflexively looks for an ExtenderCATID get property. MPF originally wrote this routine as a method, so we need to override otherwise the property pages cannot use extenders for the property objects when looking for property set/get methods.

Top

Methods

  Name Description
Public method DebugLaunch
Public method EnumOutputs
Public method Equals (Inherited from Object.)
Protected method Finalize (Inherited from Object.)
Public method get_BuildableProjectCfg
Public method get_CanonicalName
Public method get_CfgType
Public method get_DisplayName The display name is a two part item first part is the config name, 2nd part is the platform name
Public method get_IsDebugOnly
Public method get_IsPackaged
Public method get_IsPrivate
Public method get_IsReleaseOnly
Public method get_IsSpecifyingOutputSupported
Public method get_OutputGroups
Public method get_Platform
Public method get_ProjectCfgProvider
Public method get_RootURL
Public method get_TargetCodePage
Public method get_UpdateSequenceNumber
Public method get_VirtualRoot
Public method GetCfg Maps back to the configuration corresponding to the browse object.
Public method GetConfigurationPropertyAsBool Try to get the configuration property as a bool. If it fails to parse return 'defaultValue'.
Public method GetHashCode (Inherited from Object.)
Protected method GetMsBuildProperty
Public method GetPages
Public method GetProjectDesignerPages Implementation of the IVsSpecifyProjectDesignerPages. It will retun the pages that are configuration dependent.
Public method GetProjectItem Maps back to the hierarchy or project item object corresponding to the browse object.
Public method GetType (Inherited from Object.)
Protected method InternalSetConfigurationProperty Private routine to directly set properties sans events
Protected method MemberwiseClone (Inherited from Object.)
Public method OpenOutput
Public method OpenOutputGroup
Public method OutputsRequireAppRoot
Public method PrepareBuild
Public method QueryDebugLaunch
Public method SetProjectDirty
Public method ToString (Inherited from Object.)

Top

Fields

  Name Description
Public fieldStatic member Any_CPU
Public fieldStatic member AnyCPU
Public fieldStatic member Debug
Public fieldStatic member Itanium
Public fieldStatic member Release
Public fieldStatic member X64
Public fieldStatic member X86

Top

Explicit Interface Implementations

  Name Description
Explicit interface implemetationPrivate method IInternalExtenderProviderCanExtend
Explicit interface implemetationPrivate method IVsProjectFlavorCfgClose This is called to let the flavored config let go of any reference it may still be holding to the base config
Explicit interface implemetationPrivate method IVsProjectFlavorCfgget_CfgType Actual implementation of get_CfgType. When not flavored or when the flavor delegate to use we end up creating the requested config if we support it.
Explicit interface implemetationPrivate method IInternalExtenderProviderGetExtender
Explicit interface implemetationPrivate method IInternalExtenderProviderGetExtenderNames

Top

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

Microsoft.VisualStudio.Data.Tools.Package.Project.Internal Namespace