Compartilhar via


Habilitando o PnP para dispositivos

O Windows Media Gerenciador de Dispositivos monitora as notificações de chegada e remoção de dispositivos que anunciam uma interface do dispositivo Player de Áudio Portátil. Na chegada desse dispositivo, o Windows Media Gerenciador de Dispositivos consulta um parâmetro de dispositivo chamado WMDMSPCLSID para a ID de classe do provedor de serviços responsável por esse dispositivo. O Windows Media Gerenciador de Dispositivos chama IMDServiceProvider2::CreateDevice neste provedor de serviços para criar um objeto de dispositivo, que é exposto ao aplicativo como um objeto IWMDMDevice.

Um provedor de serviços pode manipular dispositivos PnP ou dispositivos não PnP; ele não pode lidar com ambos os tipos.

Para que um dispositivo funcione com o mecanismo anterior (e, portanto, habilite as notificações de chegada e remoção para o dispositivo em aplicativos do Windows Media Gerenciador de Dispositivos), os seguintes requisitos devem ser atendidos:

  • O driver de dispositivo deste dispositivo deve anunciar a interface do dispositivo Windows Media Gerenciador de Dispositivos Do Player de Áudio Portátil. O GUID para essa interface do dispositivo é definido como:

    {0xf33fdc04, 0xd1ac, 0x4e8e, {0x9a, 0x30, 0x19, 0xbb, 0xd4, 0xb1, 0x8, 0xae} }
    

    Observação

    Um dispositivo não deverá anunciar essa interface se o dispositivo anunciar a interface Volume (definida como VolumeClassGuid ou GUID_DEVINTERFACE_VOLUME em winioctl.h). Se o dispositivo anunciar a Interface de Volume, ele já estará habilitado para PnP em Gerenciador de Dispositivos do Windows Media.

     

    -AND/OR-

    Uma nova subchave do Registro para o provedor de serviços deve ser criada dentro da subchave HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Media Device Manager\KnownDevices. Essa chave deve ter o nome do provedor de serviços e deve ter as duas seguintes entradas de valor Reg_SZ:

    DeviceInterface         {25DBCE51-6C8F-4A72-8A6D-B54C2B4FC835}
    WMDMSPCLSID             {067B4B81-B1EC-489F-B111-940EBDC44EBE}
    
  • O dispositivo deve ter um parâmetro de dispositivo chamado WMDMSPCLSID. O valor desse parâmetro deve ser definido como o CLSID do provedor de serviços em um formulário de cadeia de caracteres. Para obter mais informações sobre parâmetros de dispositivo, consulte Parâmetros do dispositivo.

    Observação

    O valor do parâmetro deve ser o CLSID, não o ProgID do provedor de serviços.

     

  • O provedor de serviços para esse dispositivo deve implementar a interface IMDServiceProvider2.

  • A chave do provedor de serviços em HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Media Device Manager\Plugins\SP\SPName deve conter o seguinte valor DWORD

    PnPAware    1
    

Criando um provedor de serviços