InstalledProductRegistrationAttribute Class

Provides information for the Visual Studio splash screen and the Help About dialog box when applied to a Package-derived class or a class that implements IVsPackage. This class cannot be inherited.

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

Syntax

'Declaration
<AttributeUsageAttribute(AttributeTargets.Class, Inherited := False)> _
Public NotInheritable Class InstalledProductRegistrationAttribute _
    Inherits RegistrationAttribute
'Usage
Dim instance As InstalledProductRegistrationAttribute
[AttributeUsageAttribute(AttributeTargets.Class, Inherited = false)]
public sealed class InstalledProductRegistrationAttribute : RegistrationAttribute
[AttributeUsageAttribute(AttributeTargets::Class, Inherited = false)]
public ref class InstalledProductRegistrationAttribute sealed : public RegistrationAttribute
public final class InstalledProductRegistrationAttribute extends RegistrationAttribute

Remarks

When to Call

Apply this attribute to your VSPackage class to provide information that is displayed on the Visual Studio splash screen and the Help About dialog box.

Basic Usage

Create an InstalledProductRegistrationAttribute object to register your VSPackage with the Help About dialog box. The different constructors provide the options to use the IVsInstalledProduct interface (as implemented by the package) to gather the information and display it on the Visual Studio splash screen. To use this attribute, place it on your VSPackage class (a class derived from Package or one that implements IVsPackage).

This attribute is used only to provide data for external registration tools like regpkg.exe. It does not have any effect on the runtime behavior of the VSPackage. For more information, see VSPackage Registration.

Note

Visual C# automatically appends the word Attribute to the name of any attribute class. In Visual C# code, refer to this attribute as InstalledProductRegistration.

Registry Entries

The following registry entries are created by InstalledProductRegistrationAttribute:

  • <VSROOT>\CLSID\{PackageGuid}

  • <VSROOT>\CLSID\{PackageGuid}\@=ObjectType.FullName

  • <VSROOT>\CLSID\{PackageGuid}\InprocServer32=mscoree.dll

  • <VSROOT>\CLSID\{PackageGuid}\Class=ObjectType.FullName

  • <VSROOT>\CLSID\{PackageGuid}\Assembly=ObjectType.Assembly.FullName

  • <VSROOT>\CLSID\{PackageGuid}\ThreadingModel=Both

  • <VSROOT>\CLSID\{PackageGuid}\CodeBase=context.CodeBase

  • <VSROOT>\CLSID\{PackageGuid}\SatelliteDll

  • <VSROOT>\CLSID\{PackageGuid}\SatelliteDll\Path=SatelliteDllPath

  • <VSROOT>\CLSID\{PackageGuid}\SatelliteDll\DllName=SatelliteDllName

Samples

The standard location for this and all other attributes used for automatic registration is adjacent to the implementation of the Package in VsPkg.cs, VsPkg.vb, or VsPkg.cpp, depending on the language used in the sample.

Inheritance Hierarchy

System.Object
  System.Attribute
    Microsoft.VisualStudio.Shell.RegistrationAttribute
      Microsoft.VisualStudio.Shell.InstalledProductRegistrationAttribute

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

InstalledProductRegistrationAttribute Members

Microsoft.VisualStudio.Shell Namespace

Other Resources

VSPackage Registration

Localized Resources in MFC Applications: Satellite DLLs