IProfileManager Interface

Definition

Interface implemented by classes supporting VSPackages by persisting their state information through the Visual Studio settings mechanism.

public interface class IProfileManager
public interface class IProfileManager
__interface IProfileManager
public interface IProfileManager
type IProfileManager = interface
Public Interface IProfileManager
Derived

Remarks

Classes implementing IProfileManager, must also implement IComponent, which can be done by deriving the class from Component.

Providing Visual Studio settings support for a VSPackage should be done by implementing IProfileManager on a class independent of the class implementing the VSPackage itself.

This is because a class providing IProfileManager support will be instantiated when a user chooses the Import/Export Settings command on the Tools menu to save or retrieve Visual Studio state.

The Component base class does this for the derived class and it is the easiest way to fulfill the requirement.

The object implementing IProfileManager is registered as supporting a given VSPackage by applying a ProvideProfileAttribute to the package implementation. For more information, see Support for User Settings and ProvideProfileAttribute.

Implement SaveSettingsToXml and LoadSettingsFromXml to use the IVsSettingsWriter and IVsSettingsReader interfaces to save VSPackage state to on-disk Visual Studio settings storage.

Implement SaveSettingsToStorage and LoadSettingsFromStorage to save information to local storage (typically the registry), and that VSPackage.

The Visual Studio environment first calls LoadSettingsFromStorage and then SaveSettingsToXml for settings export operations.

LoadSettingsFromXml and then SaveSettingsToStorage are called for settings import operations.

For more information, see Importing Settings and Exporting Settings.

The Visual Studio also calls LoadSettingsFromStorage when it starts up a VSPackage to properly initialize its state.

Notes to Implementers

Implement this interface on a class when a VSPackage needs to save or retrieve settings from disk via the Visual Studio settings mechanism, as well as keeping its state synchronized with local storage (such as the registry).

Classed implementing IProfileManager, must also implement IComponent.

Methods

LoadSettingsFromStorage()

Reads a VSPackage's configuration from local storage (typically the registry) and updates its state.

LoadSettingsFromXml(IVsSettingsReader)

Writes a VSPackage's configuration to disk using the Visual Studio settings mechanism when the export option of an Import/Export Settings feature available on the IDE’s Tools menu is selected by a user.

ResetSettings()

Resets the user settings.

SaveSettingsToStorage()

Writes a VSPackage's configuration to local storage (typically the registry) following state update.

SaveSettingsToXml(IVsSettingsWriter)

Writes a VSPackage's configuration to disk using the Visual Studio settings mechanism when an import option of the Import/Export Settings command on the IDE’s Tools menu is selected by a user.

Applies to