Package.ApplicationRegistryRoot Property

Gets the root registry key of the current Visual Studio registry hive.

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

public RegistryKey ApplicationRegistryRoot { get; }

Property Value

Type: Microsoft.Win32.RegistryKey
The root RegistryKey of the Visual Studio registry hive.

This property returns the registry root for the application. Typically this is HKLM\Software\Microsoft\VisualStudio\<version> but this can change based on any alternate root that the shell was initialized with.

The key that is returned is a read-only key and cannot be modified. Changes to this key should only be made by the VSPackage installer.

You should close and dispose this key when you are finished using it. You can reliably accomplish this by using this key with the "using" syntax in C#:

using(RegistryKey k = p.ApplicationRegistryRoot) {
  // define k

Here, k is disposed when the using clause terminates.

Community Additions