ProvideProjectFactoryAttribute declares that a package provides a project factory.
Inheritance Hierarchy
Object
  Attribute
    Microsoft.VisualStudio.Shell.RegistrationAttribute
      Microsoft.VisualStudio.Shell.ProvideProjectFactoryAttribute
Namespace:  Microsoft.VisualStudio.Shell
Assembly:  Microsoft.VisualStudio.Shell.12.0 (in Microsoft.VisualStudio.Shell.12.0.dll)
Syntax
'Declaration
<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple := True, Inherited := True)> _
Public NotInheritable Class ProvideProjectFactoryAttribute _
    Inherits RegistrationAttribute
[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true, Inherited = true)]
public sealed class ProvideProjectFactoryAttribute : RegistrationAttribute
[AttributeUsageAttribute(AttributeTargets::Class, AllowMultiple = true, Inherited = true)]
public ref class ProvideProjectFactoryAttribute sealed : public RegistrationAttribute
[<Sealed>]
[<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true, Inherited = true)>]
type ProvideProjectFactoryAttribute =  
    class 
        inherit RegistrationAttribute 
    end
public final class ProvideProjectFactoryAttribute extends RegistrationAttribute
The ProvideProjectFactoryAttribute type exposes the following members.
Constructors
| Name | Description | |
|---|---|---|
| .gif) | ProvideProjectFactoryAttribute | Initializes a new instance of ProvideProjectFactoryAttribute. | 
Top
Properties
| Name | Description | |
|---|---|---|
| .gif) | DefaultProjectExtension | Gets the default extension of the project file. | 
| .gif) | DisableOnlineTemplates | Determines whether to disable online templates. | 
| .gif) | DisplayProjectFileExtensions | Gets the resource ID for project file extensions. | 
| .gif) | DisplayProjectTypeVsTemplate | Gets or sets the Visual Studio template for the project. | 
| .gif) | FactoryType | Gets the type of the project factory. | 
| .gif) | FolderGuid | Gets or sets the GUID of the folder for this type of project. | 
| .gif) | LanguageVsTemplate | Gets and sets the Visual Studio language template. | 
| .gif) | Name | Gets the name of the type of project. | 
| .gif) | NewProjectRequireNewFolderVsTemplate | Gets or sets whether this type of project requires a Visual Studio template that creates a new folder. | 
| .gif) | PossibleProjectExtensions | Gets the set of possible project extensions. | 
| .gif) | ProjectSubTypeVsTemplate | Gets or sets the Visual Studio template for the project subtype. | 
| .gif) | ProjectTemplatesDirectory | Gets the project templates directory. | 
| .gif) | ShowOnlySpecifiedTemplatesVsTemplate | Gets or sets the Visual Studio template to be shown in the New Project dialog. | 
| .gif) | SortPriority | Gets or sets the order in which projects are displayed in the New Project dialog. | 
| .gif) | TemplateGroupIDsVsTemplate | Gets or sets the Visual Studio template's group ID. | 
| .gif) | TemplateIDsVsTemplate | Gets or sets the Visual Studio template ID. | 
| .gif) | TypeId | Gets the current instance of this attribute. (Inherited from RegistrationAttribute.) | 
Top
Methods
| Name | Description | |
|---|---|---|
| .gif) | Equals | Infrastructure. Returns a value that indicates whether this instance is equal to a specified object. (Inherited from Attribute.) | 
| .gif) | GetHashCode | Returns the hash code for this instance. (Inherited from Attribute.) | 
| .gif) | GetType | Gets the Type of the current instance. (Inherited from Object.) | 
| .gif) | IsDefaultAttribute | When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class. (Inherited from Attribute.) | 
| .gif) | Match | When overridden in a derived class, returns a value that indicates whether this instance equals a specified object. (Inherited from Attribute.) | 
| .gif) | Register | Registers this attribute. (Overrides RegistrationAttribute.Register(RegistrationAttribute.RegistrationContext).) | 
| .gif) | ToString | Returns a string that represents the current object. (Inherited from Object.) | 
| .gif) | Unregister | Removes the key for this attribute from the registry. (Overrides RegistrationAttribute.Unregister(RegistrationAttribute.RegistrationContext).) | 
Top
Explicit Interface Implementations
| Name | Description | |
|---|---|---|
| .gif) .gif) | System#Runtime#InteropServices#_Attribute#GetIDsOfNames | Maps a set of names to a corresponding set of dispatch identifiers. (Inherited from Attribute.) | 
| .gif) .gif) | System#Runtime#InteropServices#_Attribute#GetTypeInfo | Retrieves the type information for an object, which can be used to get the type information for an interface. (Inherited from Attribute.) | 
| .gif) .gif) | System#Runtime#InteropServices#_Attribute#GetTypeInfoCount | Retrieves the number of type information interfaces that an object provides (either 0 or 1). (Inherited from Attribute.) | 
| .gif) .gif) | System#Runtime#InteropServices#_Attribute#Invoke | Provides access to properties and methods exposed by an object. (Inherited from Attribute.) | 
Top
Remarks
A single VSPackage can provide multiple project factories. If a VSPackage declares that it provides a project factory, it should create the factory and offer it to Visual Studio in the Initialize method of the Package-derived class.
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.