Função IUnknown_QueryService (shlwapi.h)

Recupera uma interface para um serviço de um objeto especificado.

Sintaxe

LWSTDAPI IUnknown_QueryService(
  [in]  IUnknown *punk,
  [in]  REFGUID  guidService,
  [in]  REFIID   riid,
  [out] void     **ppvOut
);

Parâmetros

[in] punk

Tipo: IUnknown*

Um ponteiro para a instância IUnknown do objeto COM que dá suporte ao serviço.

[in] guidService

Tipo: REFGUID

SID (identificador exclusivo) do serviço.

[in] riid

Tipo: REFIID

A IID da interface de serviço desejada.

[out] ppvOut

Tipo: void**

Quando esse método retorna, contém o ponteiro de interface solicitado riid. Se tiver êxito, o aplicativo de chamada será responsável por chamar IUnknown::Release usando esse valor quando o serviço não for mais necessário. No caso de falha, esse valor é NULL.

Retornar valor

Tipo: HRESULT

Retorna S_OK se tiver êxito. Retornará E_FAIL se o objeto não oferecer suporte a IServiceProvider. Caso contrário, a função retorna o HRESULT retornado pelo método QueryService do objeto.

Comentários

Se o objeto passado no parâmetro punk der suporte à interface IServiceProvider , seu método QueryService será invocado, passando os parâmetros guidService, riid e ppvOut e propagando o valor retornado. Caso contrário, a função retornará E_FAIL.

Para as versões do Windows que não incluem IUnknown_QueryService no Shlwapi.h, essa função deve ser chamada diretamente de Shlwapi.dll usando o ordinal 176.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional, Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server, Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho shlwapi.h
DLL Shlwapi.dll (versão 5.0 ou posterior)

Confira também

IServiceProvider

Queryservice