Registration Flags

[The feature associated with this page, Windows Media Player SDK, is a legacy feature. It has been superseded by MediaPlayer. MediaPlayer has been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer instead of Windows Media Player SDK, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

When the Windows Media Player Plug-in Wizard creates a new UI plug-in project, it creates a key in the registry that contains information about the plug-in. This key is created in the following location:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MediaPlayer\UIPlugins\{ClassId}

ClassId is the class id of the plug-in.

This key includes the following values.

Name Type Description
Capabilities REG_DWORD A DWORD value that consists of at least one plug-in type flag that may be combined with one or more plug-in capabilities flags by using binary OR operations.
Description REG_SZ A string that contains the description of the plug-in. The plug-in wizard creates a string resource and provides the URL of the resource (using the res protocol) for this value.
FriendlyName REG_SZ A string that contains the user-readable name for the plug-in. The plug-in wizard creates a string resource and provides the URL of the resource (using the res protocol) for this value.
UninstallPath (optional) REG_SZ A string that contains the path to an executable file that uninstalls the plug-in.

For more information about the res protocol, see the Internet Development SDK.

The following table details the plug-in type flags.

Plug-in Type Flag Value Description
PLUGIN_TYPE_BACKGROUND 0x1 The UI plug-in does not display a user interface.
PLUGIN_TYPE_SEPARATEWINDOW 0x2 The UI plug-in is a separate window plug-in.
PLUGIN_TYPE_DISPLAYAREA 0x3 The UI plug-in is a display area plug-in.
PLUGIN_TYPE_SETTINGSAREA 0x4 The UI plug-in is a settings area plug-in.
PLUGIN_TYPE_METADATAAREA 0x5 The UI plug-in is a metadata area plug-in.

The following table details the plug-in capabilities flags.

Plug-in Capabilities Flag Value Description
PLUGIN_FLAGS_ACCEPTSMEDIA 0x10000000 The UI plug-in can accept Media object pointer arrays when Windows Media Player calls IWMPPluginUI::SetProperty .
PLUGIN_FLAGS_ACCEPTSPLAYLISTS 0x8000000 The UI plug-in can accept Playlist object pointer arrays when Windows Media Player calls IWMPPluginUI::SetProperty .
PLUGIN_FLAGS_HASPRESETS 0x4000000 The UI plug-in uses presets. If the plug-in specifies this flag, Windows Media Player will query the plug-in for preset information by calling IWMPPluginUI::GetProperty .
PLUGIN_FLAGS_HASPROPERTYPAGE 0x80000000 The UI plug-in provides a property page dialog. Windows Media Player will call IWMPPluginUI::DisplayPropertyPage if this flag is set when the property page is invoked.
PLUGIN_FLAGS_HIDDEN 0x02000000 The background UI plug-in does not appear on the Plug-ins menu that is accessed from the View or Tools menus or the Select Now Playing options button in Now Playing. It does appear on the Plug-ins tab of the Options dialog. It does cause the Background Plug-in Running icon to appear in the status bar.This flag has no effect on plug-ins other than background UI plug-ins.
PLUGIN_FLAGS_INSTALLAUTORUN 0x40000000 Windows Media Player runs the UI plug-in automatically when the plug-in is installed.
PLUGIN_FLAGS_LAUNCHPROPERTYPAGE 0x20000000 Windows Media Player calls IWMPPluginUI::DisplayPropertyPage when the UI plug-in runs for the first time.If this flag is specified, PLUGIN_FLAGS_HASPROPERTYPAGE should be specified also.

The following constants are defined in wmpplug.h. Do not change the values associated with these constants.

Name Description
PLUGIN_INSTALLREGKEY The location of the plug-in registry key.
PLUGIN_INSTALLREGKEY_FRIENDLYNAME The name of the friendly name value.
PLUGIN_INSTALLREGKEY_DESCRIPTION The name of the description value.
PLUGIN_INSTALLREGKEY_CAPABILITIES The name of the capabilities value.
PLUGIN_INSTALLREGKEY_UNINSTALL The name of the uninstall path value.

IWMPPluginUI::DisplayPropertyPage

IWMPPluginUI::GetProperty

IWMPPluginUI::SetProperty

User Interface Plug-ins Programming Reference