Método IWMDMStorage3::SetEnumPreference (mswmdm.h)

O método SetEnumPreference define o modo de exibição preferencial para o armazenamento.

Sintaxe

HRESULT SetEnumPreference(
  [in, out] WMDM_STORAGE_ENUM_MODE *pMode,
  [in]      DWORD                  nViews,
  [in]      WMDMMetadataView       *pViews
);

Parâmetros

[in, out] pMode

Modo desejado do enumerador de armazenamento. Para obter mais detalhes sobre o modo , consulte WMDM_STORAGE_ENUM_MODE. Se o valor de pMode for definido como ENUM_MODE_USE_DEVICE_PREF, no retorno, ele será definido como ENUM_MODE_RAW ou ENUM_MODE_METADATA_VIEWS, com base na preferência do dispositivo.

[in] nViews

Número de definições de exibição fornecidas.

Esse parâmetro será ignorado se o valor de pMode for ENUM_MODE_RAW ou se o valor de pMode for ENUM_MODE_USE_DEVICE_PREF e o dispositivo não preferir exibições de metadados.

Se o valor de pMode for ENUM_MODE_METADATA_VIEWS ou se o valor de pMode for ENUM_MODE_USE_DEVICE_PREF e o dispositivo preferir exibições de metadados, esse parâmetro ainda poderá ser 0. Nesse caso, o Windows Media Gerenciador de Dispositivos usa seus modos de exibição de metadados padrão.

Se o valor de nViews for 0, ppViews deverá ser NULL. Se o valor de nViews não for 0, ppViews deverá apontar para uma matriz de estruturas WMDMMetadataView com elementos nViews .

[in] pViews

Matriz de definições de exibição. O comprimento da matriz deve ser igual a nViews.

Esse parâmetro será ignorado se o valor de pMode for ENUM_MODE_RAW ou se o valor de pMode for ENUM_MODE_USE_DEVICE_PREF e o dispositivo não preferir exibições de metadados.

Se o valor de pMode for ENUM_MODE_METADATA_VIEWS ou se o valor de pMode for ENUM_MODE_USE_DEVICE_PREF e o dispositivo preferir exibições de metadados, esse parâmetro ainda poderá ser NULL. Nesse caso, o Windows Media Gerenciador de Dispositivos usa seus modos de exibição de metadados padrão.

O valor desse parâmetro deverá ser NULL se o valor de nViews for 0. Se o valor de nViews não for 0, ppViews deverá apontar para uma matriz de estruturas WMDMMetadataView com elementos nViews .

Retornar valor

O método retorna um HRESULT. A tabela a seguir lista todos os valores possíveis.

Código de retorno Descrição
S_OK
O método foi bem-sucedido.
E_OUTOFMEMORY
Não há memória suficiente para alocar o item.
E_INVALIDARG
Um ou mais parâmetros são inválidos.
WMDM_E_NOT_CERTIFIED
O chamador não tem os direitos para executar essa operação.
WMDM_E_NOTSUPPORTED
O objeto não dá suporte a esse método.
E_FAIL
Ocorreu um erro não especificado.

Comentários

O Windows Media Gerenciador de Dispositivos pode apresentar exibições de metadados do conteúdo no dispositivo. Ele percorre todo o conteúdo em um armazenamento de nível superior (como memória interna ou um cartão de armazenamento) e retorna um enumerador de armazenamento que apresenta o conteúdo organizado pelos metadados do conteúdo. A definição de uma exibição de metadados é fornecida por meio de uma estrutura WMDMMetadataView .

Esse comportamento é controlado pelo parâmetro pMode . Se o pMode estiver definido como ENUM_MODE_RAW, o Windows Media Gerenciador de Dispositivos retornará um enumerador que espelha a hierarquia do sistema de arquivos no armazenamento do dispositivo. Se o pMode estiver definido como ENUM_MODE_METADATA_VIEWS, o Windows Media Gerenciador de Dispositivos gerará exibições de metadados.

Os dispositivos indicam sua preferência definindo o parâmetro de dispositivo UseMetadataViews no momento em que o dispositivo está instalado. Para obter mais informações sobre UseMetadataViews, consulte Parâmetros de dispositivo. Se o aplicativo permitir que o dispositivo decida sobre o tipo de enumerador de armazenamento retornado, ele deverá definir pMode como ENUM_MODE_USE_DEVICE_PREF.

Depois que esse método for chamado, chamadas posteriores para IWMDMStorage::EnumStorage se comportarão de acordo com a preferência de enumeração de armazenamento definida por esse método. Esse método pode ser chamado novamente para alterar o comportamento das chamadas IWMDMStorage::EnumStorage subsequentes .

Esse método normalmente deve ser chamado no armazenamento de nível superior. Se esse método for chamado em qualquer um dos armazenamentos na exibição de metadados, ele retornará WMDM_E_NOTSUPPORTED.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho mswmdm.h
Biblioteca Mssachlp.lib

Confira também

Interface IWMDMetaData

IWMDMStorage Interface

IWMDMStorage::EnumStorage

WMDMMetadataView