Compilando os arquivos IDL fornecidos com o SDK

O SDK do Windows Media Gerenciador de Dispositivos inclui arquivos de cabeçalho e os arquivos IDL de origem para a maioria desses arquivos de cabeçalho. Os arquivos de cabeçalho estão localizados na pasta \inc\ no caminho de instalação do SDK. Os arquivos IDL estão localizados na pasta \idl\.

Os cabeçalhos pré-compilados são muito mais simples de usar e vários dos arquivos IDL são combinados em um único cabeçalho fornecido. No entanto, se você decidir processar seus próprios arquivos de cabeçalho dos arquivos IDL fornecidos, este tópico descreve quais arquivos IDL criam quais arquivos de cabeçalho e também descreve as dependências de cada arquivo IDL.

IDL equivalente e arquivos de cabeçalho fornecidos

IDL Cabeçalho fornecido equivalente Descrição
WMDM.idl
WMSP.idl
WMSCP.idl
icomponentauthenticate.idl
Mswmdm.h Todos os quatro arquivos IDL estão incluídos neste único cabeçalho fornecido.
WMDM.idl Define todas as interfaces de aplicativo e estruturas, constantes e códigos de erro necessários.
WMSP.idl Define todas as interfaces do provedor de serviços.
WMSCP.idl Define todas as interfaces, valores guid e constantes exigidos por provedores de conteúdo seguros.
icomponentauthenticate.idl Define a interface IComponentAuthenticate .
Wmdmlog.idl Wmdmlog.h
wmdmlog_i.c
Define as interfaces de log.
Ambos os arquivos de cabeçalho fornecidos devem ser usados, em vez de apenas o arquivo .h, devido a um problema com o arquivo IDL.
WMDRMDeviceApp.idl Wmdrmdeviceapp.h Define as interfaces IWMDRMDeviceApp e IWMDRMDeviceApp2 usadas por aplicativos que atualizam o DRM em dispositivos ou contagens de reprodução de medidor em dispositivos.

Dependências de IDL

Vários dos arquivos IDL fornecidos têm dependências de build. Se você planeja compilar os arquivos IDL por conta própria, deverá processar essas dependências externas na ordem mostrada na tabela a seguir.

IDL Dependências
icomponentauthenticate.idl import "oaidl.idl";
#include "icomponentauthenticate.idl"
WMDM.idl Nenhuma dependência externa
WmdmLog.idl Nenhuma dependência externa
WMDRMDeviceApp.idl Nenhuma dependência externa
WMSCP.idl #include "WMDRMDeviceApp.idl"
#include "WMSP.idl"
WMSP.idl #include "WMDM.idl"

Tarefas comuns a aplicativos e provedores de serviços