Разделы реестра и записи для интернет-магазина типа 1

[Функция, связанная с этой страницей, Медиаплеер Windows SDK, является устаревшей функцией. Он был заменен MediaPlayer. MediaPlayer оптимизирован для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует по возможности использовать MediaPlayer вместо пакета SDK для Медиаплеер Windows. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]

Чтобы сделать интернет-магазин типа 1 доступным в Медиаплеер Windows, поставщик интернет-магазина должен создать следующие подразделы реестра и записи на компьютере пользователя.

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MediaPlayer\Subscriptions\keyName]
"Capabilities"=dword:flags
"SubscriptionObjectGUID"=clsid
"FriendlyName"=friendlyName

[HKEY_CLASSES_ROOT\AppID\appid]
@=pluginName
"DllSurrogate"=""

[HKEY_CLASSES_ROOT\CLSID\clsid]
@=className
"AppID"="appid"

[HKEY_CLASSES_ROOT\CLSID\clsid\InprocServer32]
@=moduleName
"ThreadingModel"="threading"

Примечание

Установка значения DllSurrogate в пустую строку означает, что среда выполнения COM загрузит подключаемый модуль интернет-магазина в суррогат DLL по умолчанию, dllhost.exe.

В предыдущем синтаксисе реестра символы курсивом являются заполнителями для имен и глобальных уникальных идентификаторов (GUID), относящихся к интернет-магазину. В следующей таблице описаны эти заполнители.

Заполнитель Описание
keyName Строка, согласованная между корпорацией Майкрософт и интернет-магазином. Эта строка однозначно идентифицирует интернет-магазин. Пример: "Proseware"
flags Побитовое ИЛИ одного или нескольких флагов возможностей подключаемого модуля. Эти флаги указывают, следует ли Медиаплеер Windows вызывать определенные методы IWMPContentPartner. Сведения о поддерживаемых флагах см. в таблице флагов возможностей подключаемого модуля, которая приведена ниже. Пример: 00000058
Clsid GUID, который является идентификатором класса (CLSID) для класса, реализующего IWMPContentPartner в подключаемом модуле интернет-магазина. Этот GUID должен быть в формате реестра, в комплекте с фигурными скобками. Формат: {xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx}
Friendlyname Понятное имя интернет-магазина. Пример: "Музыкальная служба Proseware"
appid GUID, который является идентификатором приложения (AppID) для подключаемого модуля интернет-магазина. Этот GUID должен быть в формате реестра, в комплекте с фигурными скобками. Формат: {xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx}
имя подключаемого модуля Имя подключаемого модуля интернет-магазина. Пример: "Подключаемый модуль для партнеров по контенту Proseware"
Classname Имя класса, реализующего IWMPContentpartner в подключаемом модуле интернет-магазина. Пример: "CProsewarePartner"
moduleName Полный путь к библиотеке DLL, реализующей подключаемый модуль интернет-магазина. Пример: "C:\Program Files\Proseware\ProsewarePartner.dll"
Threading Тип квартиры, в которой выполняется подключаемый модуль. "ThreadingModel"="Apartment" указывает, что подключаемый модуль выполняется в однопотоковом объекте (STA). ThreadingModel"="Free" указывает, что подключаемый модуль выполняется в многопоточности (MTA).

В следующей таблице описаны флаги возможностей подключаемого модуля.

Флаг Значение Описание
SUBSCRIPTION_CAP_BACKGROUNDPROCESSING 0x8 Медиаплеер Windows следует вызвать IWMPContentPartner::Notify, чтобы сообщить подключаемого модуля, когда он должен запускать и останавливать фоновую обработку.
SUBSCRIPTION_CAP_DEVICEAVAILABLE 0x10 Медиаплеер Windows должен вызывать IWMPContentPartner::UpdateDevice.
SUBSCRIPTION_CAP_IS_CONTENTPARTNER 0x40 Сообщает Медиаплеер Windows, что подключаемый модуль реализует интерфейс IWMPContentPartner. Этот флаг должен быть установлен для всех подключаемых модулей интернет-магазина типа 1.
SUBSCRIPTION_CAP_ALTLOGIN 0x80 Сообщает Медиаплеер Windows, что подключаемый модуль поддерживает альтернативное имя входа. Если подключаемый модуль поддерживает альтернативное имя входа, Медиаплеер Windows получает URL-адрес альтернативного входа и подпись путем вызова IWMPContentPartner::GetItemInfo.

Записи реестра для разработки и тестирования

Когда вы начинаете разрабатывать интернет-магазин, корпорация Майкрософт предоставляет вам два ключа: тестовый и рабочий. На этапе разработки и тестирования интернет-магазин будет отображаться в Медиаплеер Windows только в том случае, если тестовый ключ или рабочий ключ находится в реестре на компьютере пользователя. Дополнительные сведения о тестовых и рабочих ключах см. в разделе Тестовые и рабочие ключи для интернет-магазина типа 1.

Поместите тестовый или рабочий ключ в следующее расположение в реестре.

[HKEY_CURRENT_USER\Software\Microsoft\MediaPlayer\Services]
"TestParameter" = "key1;key2;...;keyN"

Обратите внимание, что значение записи реестра TestParameter может указывать несколько тестовых или рабочих ключей. Например, предположим, что в Proseware есть тестовый ключ "1234", а у Contoso — тестовый ключ "2345". В следующей записи реестра указано, что тестовые хранилища для Proseware и Contoso будут отображаться в Медиаплеер Windows.

[HKEY_CURRENT_USER\Software\Microsoft\MediaPlayer\Services]
"TestParameter" = "1234;2345"

Запись реестра ActiveService

Когда пользователь активирует интернет-магазин, Медиаплеер Windows записывает в реестр сведения, которые идентифицируют активный интернет-магазин. Медиаплеер Windows помещает сведения в следующее расположение в реестре на компьютере пользователя.

[HKEY_CURRENT_USER\Software\Microsoft\MediaPlayer\Subscriptions]
"ActiveService"=serviceInfo

В предыдущем синтаксисе реестра serviceInfo — это заполнитель для строки, содержащей описательные сведения об активном интернет-магазине.

Справочные материалы по интернет-магазинам типа 1