Método IWMDeviceManager3::SetDeviceEnumPreference (mswmdm.h)
O método SetDeviceEnumPreference define as preferências de enumeração do dispositivo.
Sintaxe
HRESULT SetDeviceEnumPreference(
[in] DWORD dwEnumPref
);
Parâmetros
[in] dwEnumPref
Especifica uma combinação OR bit a bit de um ou mais dos valores de bit a seguir que especificam a preferência de enumeração. Cada bit definido habilita o comportamento estendido correspondente, enquanto a ausência desse bit desabilita o comportamento estendido e especifica o comportamento de enumeração padrão compatível com versões anteriores. Os valores possíveis para fuPrefs são fornecidos na tabela a seguir.
Valor | Descrição |
---|---|
DO_NOT_VIRTUALIZE_STORAGES_AS_DEVICES | Por padrão, para dispositivos que contêm várias mídias de armazenamento (por exemplo, vários cartões de memória flash), cada um desses armazenamentos enumera como um pseudo-dispositivo separado. No entanto, quando esse sinalizador é definido, os armazenamentos não são visíveis como dispositivos e apenas os dispositivos são visíveis como dispositivos. Confira Comentários para obter mais informações. |
ALLOW_OUTOFBAND_NOTIFICATION | Quando esse sinalizador é definido, o provedor de serviços pode enviar a chegada e a remoção do dispositivo por um mecanismo adicional, como usando uma mensagem de janela, bem como o mecanismo padrão de chamar quaisquer interfaces IWMDMNotification implementadas pelo aplicativo. |
Retornar valor
O método retorna um HRESULT. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir.
Código de retorno | Descrição |
---|---|
|
O método foi bem-sucedido. |
|
O parâmetro fuPrefs especifica um valor de bit sem suporte. |
|
O método foi chamado após uma operação de enumeração; ele deve ser chamado antes da operação de enumeração. |
Comentários
Esse método fornece aos clientes a capacidade de substituir o comportamento de enumeração de dispositivo padrão do Windows Media Gerenciador de Dispositivos. Para substituir o comportamento padrão, o aplicativo cliente deve chamar esse método imediatamente depois de criar o objeto gerenciador de dispositivos consultando a interface IWMDMDeviceManager3 do Media Gerenciador de Dispositivos. A chamada deve ser feita antes que qualquer enumeração ocorra, seja explicita ou implicitamente como resultado de outra operação.
Depois que um sinalizador de preferência é definido, ele não pode ser alterado durante o tempo de vida do aplicativo (não apenas o tempo de vida do objeto Gerenciador de Dispositivos do Windows Media). Tentar alterar um sinalizador de preferência resultará em um erro. Chamar esse método novamente com as mesmas configurações de sinalizador não retorna um erro e também tem qualquer efeito na enumeração.
O provedor de serviços pode não respeitar o sinalizador de DO_NOT_VIRTUALIZE_STORAGES_AS_DEVICES. Uma maneira mais robusta de determinar se os armazenamentos são hospedados pelo mesmo dispositivo é chamar IWMDMDevice2::GetCanonicalName. Os armazenamentos do mesmo dispositivo retornarão valores idênticos, exceto para o dígito final após o último caractere "$".
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Windows |
Cabeçalho | mswmdm.h |