Compartilhar via


Método IHttpServer2::GetExtendedInterface

Recupera o ponteiro down-cast correto com base nos valores guid de versão (identificador global exclusivo).

Sintaxe

virtual HRESULT GetExtendedInterface(  
   _In_ const GUID &       Version1,  
   _In_ PVOID              pInput,  
   _In_ const GUID &       Version2,  
   _Outptr_ PVOID *        ppOutput  
) = 0;  

Parâmetros

Version1
[IN] GUID da instância herdada.

pInput
[IN] Aponta para a instância herdada.

Version2
[IN] GUID da interface para a qual converter.

ppOutput
[OUT] Aponta para a instância de conversão inativa.

Valor Retornado

Um HRESULT. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir.

Valor Descrição
S_OK Indica que a operação foi bem-sucedida.

Comentários

Esse método destina-se à conversão de um ponteiro de classe base para uma classe derivada. Por exemplo, supondo que você tenha um ponteiro de instância existente para IHttpRequest. seu código precisaria reduzir a conversão para sua classe derivada IHttpRequest2 para chamar um de seus novos métodos.

HRESULT SomeFunction(   
    IHttpServer2* pHttpServer,  
    IHttpRequest pHttpRequest   
)  
{  
    IHttpRequest2 pHttpRequest2 = NULL;  
    // Grab a new interface!  
    pHttpServer-> GetExtendedInterface(__uuidof(pHttpRequest), pHttpRequest, __uuidof(pHttpRequest2), &pHttpRequest2 );  
    …  
}  

Em vez de usar GetExtendedInterface, você pode usar a função de utilitário HttpGetExtendedInterface do cliente para reduzir o ponteiro.

Requisitos

Type Descrição
Cliente – IIS 7.0 no Windows Vista
– IIS 7.5 no Windows 7
– IIS 8.0 no Windows 8
– IIS 10.0 no Windows 10
Servidor – IIS 7.0 no Windows Server 2008
– IIS 7.5 no Windows Server 2008 R2
– IIS 8.0 no Windows Server 2012
– IIS 8.5 no Windows Server 2012 R2
– IIS 10.0 no Windows Server 2016
Produto - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
- IIS Express 7.5, IIS Express 8.0, IIS Express 10.0
parâmetro Httpserv.h

Consulte Também

IHttpServer2 Interface