다음을 통해 공유


IHttpServer2::GetExtendedInterface 메서드

버전 GUID(전역적으로 고유한 식별자) 값을 기반으로 올바른 다운 캐스팅 포인터를 검색합니다.

구문

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

매개 변수

Version1
[IN] 레거시 instance GUID입니다.

pInput
[IN] 레거시 instance 가리킵니다.

Version2
[IN] 아래로 캐스팅할 인터페이스의 GUID입니다.

ppOutput
[OUT] 다운 캐스팅된 instance 가리킵니다.

반환 값

HRESULT입니다. 가능한 값에는 다음 표에 있는 값이 포함되지만, 이에 국한되는 것은 아닙니다.

설명
S_OK 작업이 성공했음을 나타냅니다.

설명

이 메서드는 기본 클래스 포인터를 파생 클래스로 캐스팅하기 위한 것입니다. 예를 들어 IHttpRequest에 대한 기존 instance 포인터가 있다고 가정합니다. 새 메서드 중 하나를 호출하려면 코드가 파생 클래스 IHttpRequest2 로 캐스팅을 중단해야 합니다.

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

를 사용하는 GetExtendedInterface대신 클라이언트 HttpGetExtendedInterface 유틸리티 함수를 사용하여 포인터를 아래로 캐스팅할 수 있습니다.

요구 사항

형식 Description
클라이언트 - Windows Vista의 IIS 7.0
- Windows 7의 IIS 7.5
- Windows 8의 IIS 8.0
- WINDOWS 10 IIS 10.0
서버 - Windows Server 2008의 IIS 7.0
- Windows Server 2008 R2의 IIS 7.5
- Windows Server 2012의 IIS 8.0
- Windows Server 2012 R2의 IIS 8.5
- WINDOWS SERVER 2016 IIS 10.0
제품 - 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
헤더 Httpserv.h

참고 항목

IHttpServer2 인터페이스