Compartilhar via


Método ILoadFilter::LoadIFilter (filtereg.h)

Recupera e carrega o filtro mais apropriado mapeado para uma fonte de dados do Shell.

Sintaxe

HRESULT LoadIFilter(
  [in]      LPCWSTR               pwcsPath,
  [in]      FILTERED_DATA_SOURCES *pFilteredSources,
  [in]      IUnknown              *pUnkOuter,
  [in]      BOOL                  fUseDefault,
  [in, out] CLSID                 *pFilterClsid,
  [in, out] int                   *SearchDecSize,
  [in, out] WCHAR                 **pwcsSearchDesc,
  [in, out] IFilter               **ppIFilt
);

Parâmetros

[in] pwcsPath

Ponteiro para um buffer de cadeia de caracteres Unicode delimitado por vírgulas que especifica o caminho do arquivo a ser filtrado. Este parâmetro pode ser nulo.

[in] pFilteredSources

Ponteiro para a estrutura FILTERED_DATA_SOURCES que especifica parâmetros para uma fonte de dados do Shell para a qual um filtro é carregado. Esse parâmetro não pode ser nulo.

[in] pUnkOuter

Se o objeto estiver sendo criado como parte de uma agregação, especifique um ponteiro para a interface IUnknown de controle da agregação.

[in] fUseDefault

Se TRUE, use o filtro padrão; se FALSE, prossiga com o filtro mais apropriado disponível.

[in, out] pFilterClsid

Ponteiro para o CLSID (CLSID_FilterRegistration) que recebe o identificador de classe do filtro retornado.

[in, out] SearchDecSize

Não implementado.

[in, out] pwcsSearchDesc

Não implementado.

[in, out] ppIFilt

O endereço de um ponteiro para uma implementação de uma interface IFilter selecionada por LoadIFilter .

Retornar valor

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Um filtro, também conhecido como manipulador de filtro, é uma implementação da interface IFilter .

ILoadFilter tenta carregar um filtro que pode processar uma fonte de dados shell do tipo especificado no parâmetro pFilteredSources por meio do parâmetro pwcsPath . Se um filtro apropriado para a fonte de dados não for encontrado e fUseDefault for false, esse método retornará nulo no parâmetro ppIFilt . Se um filtro apropriado para a fonte de dados não for encontrado e fUseDefault for true, a interface IFilter no IFilter padrão será retornada no parâmetro ppIFilt .

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho filtereg.h
Biblioteca SearchSDK.lib (para CLSID_FilterRegistration)

Confira também

ILoadFilter