Поделиться через


Компиляция IDL-файлов, поставляемых с пакетом SDK

Пакет SDK для windows Media диспетчер устройств включает файлы заголовков и исходные IDL-файлы для большинства этих файлов заголовков. Файлы заголовков находятся в папке \inc\ в пути установки пакета SDK. IDL-файлы находятся в папке \idl\.

Предварительно скомпилированные заголовки гораздо проще использовать, а несколько IDL-файлов объединяются в один предоставленный заголовок. Однако если вы решили обработать собственные файлы заголовков из предоставленных IDL-файлов, в этом разделе описывается, какие IDL-файлы создаются файлы заголовков, а также описаны зависимости каждого IDL-файла.

Эквивалентные файлы IDL и предоставленные файлы заголовков

IDL Эквивалентный предоставленный заголовок Описание
WMDM.idl
WMSP.idl
WMSCP.idl
icomponentauthenticate.idl
Mswmdm.h Все четыре IDL-файла включены в этот единственный предоставленный заголовок.
WMDM.idl Определяет все интерфейсы приложений и необходимые структуры, константы и коды ошибок.
WMSP.idl Определяет все интерфейсы поставщика услуг.
WMSCP.idl Определяет все интерфейсы, значения GUID и константы, необходимые поставщикам безопасного содержимого.
icomponentauthenticate.idl Определяет интерфейс IComponentAuthenticate .
Wmdmlog.idl Wmdmlog.h
wmdmlog_i.c
Определяет интерфейсы ведения журнала.
Из-за проблемы с IDL-файлом необходимо использовать оба предоставленных файла заголовков, а не только H-файл.
WMDRMDeviceApp.idl Wmdrmdeviceapp.h Определяет интерфейсы IWMDRMDeviceApp и IWMDRMDeviceApp2 , используемые приложениями, которые обновляют DRM на устройствах, или счетчики воспроизведения на устройствах.

Зависимости IDL

Некоторые из предоставленных IDL-файлов имеют зависимости сборки. Если вы планируете скомпилировать IDL-файлы самостоятельно, необходимо обработать эти внешние зависимости в порядке, указанном в следующей таблице.

IDL Зависимости
icomponentauthenticate.idl import "oaidl.idl";
#include icomponentauthenticate.idl
WMDM.idl Отсутствие внешних зависимостей
WmdmLog.idl Отсутствие внешних зависимостей
WMDRMDeviceApp.idl Отсутствие внешних зависимостей
WMSCP.idl #include "WMDRMDeviceApp.idl"
#include "WMSP.idl"
WMSP.idl #include "WMDM.idl"

Задачи, общие для приложений и поставщиков служб