Share via


DefaultRegistryRootAttribute Class

Defines the default registry root used to register VSPackage information. This class cannot be inherited.

Inheritance Hierarchy

System.Object
  System.Attribute
    Microsoft.VisualStudio.Shell.DefaultRegistryRootAttribute

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

Syntax

'Declaration
<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple := False, Inherited := True)> _
Public NotInheritable Class DefaultRegistryRootAttribute _
    Inherits Attribute
[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = false, Inherited = true)]
public sealed class DefaultRegistryRootAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Class, AllowMultiple = false, Inherited = true)]
public ref class DefaultRegistryRootAttribute sealed : public Attribute
[<Sealed>]
[<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = false, Inherited = true)>]
type DefaultRegistryRootAttribute =  
    class
        inherit Attribute
    end
public final class DefaultRegistryRootAttribute extends Attribute

The DefaultRegistryRootAttribute type exposes the following members.

Constructors

  Name Description
Public method DefaultRegistryRootAttribute Initializes a new DefaultRegistryRootAttribute object with the given registry root.

Top

Properties

  Name Description
Public property Root Gets the value of the default registry root for the VSPackage.
Public property TypeId When implemented in a derived class, gets a unique identifier for this Attribute. (Inherited from Attribute.)

Top

Methods

  Name Description
Public method Equals Infrastructure. Returns a value that indicates whether this instance is equal to a specified object. (Inherited from Attribute.)
Protected method Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method GetHashCode Returns the hash code for this instance. (Inherited from Attribute.)
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method 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.)
Public method Match When overridden in a derived class, returns a value that indicates whether this instance equals a specified object. (Inherited from Attribute.)
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Public method ToString Returns a string that represents the current object. (Inherited from Object.)

Top

Explicit Interface Implementations

  Name Description
Explicit interface implemetationPrivate method _Attribute.GetIDsOfNames Maps a set of names to a corresponding set of dispatch identifiers. (Inherited from Attribute.)
Explicit interface implemetationPrivate method _Attribute.GetTypeInfo Retrieves the type information for an object, which can be used to get the type information for an interface. (Inherited from Attribute.)
Explicit interface implemetationPrivate method _Attribute.GetTypeInfoCount Retrieves the number of type information interfaces that an object provides (either 0 or 1). (Inherited from Attribute.)
Explicit interface implemetationPrivate method _Attribute.Invoke Provides access to properties and methods exposed by an object. (Inherited from Attribute.)

Top

Remarks

Important

Packages that target Visual Studio 2010 only do not need a package load key.

Packages that target Visual Studio 2008 and earlier must have a package load key in order to validate and load VSPackages.

When to Call

For packages that target Visual Studio 2008 or earlier, apply the attribute DefaultRegistryRootAttribute to your Package-derived class or class that implements IVsPackage to define the default registry root for the package.

Basic Usage

This attribute should be applied to classes implementing the Package class and needing to use an alternate registry root. If not present, the default registry root will be used and this may prevent the package from functioning. The base Package class already provides this attribute for the version of Visual Studio that the package was built for.

The value of the attribute must be a fully qualified registry root, such as Software\Microsoft\VisualStudio\8.0. External registration tools can override the default registry root with their own custom root.

This attribute class is only used to provide data for external registration tools. It does not have any effect on the runtime behavior of the VSPackage. To use DefaultRegistryRootAttribute, place it on class that is derived from Package or that implements IVsPackage.

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.Shell Namespace