다음을 통해 공유


IHttpUser::GetUserVariable 메서드

사용자 지정 사용자 데이터를 이름으로 반환합니다.

구문

virtual PVOID GetUserVariable(  
   IN PCSTR pszVariableName  
) = 0;  

매개 변수

pszVariableName
[IN] 검색할 데이터의 변수 이름을 포함하는 null로 끝나는 상수 문자열에 대한 포인터입니다.

반환 값

void 업캐스트 사용자 지정 데이터를 포함하는 포인터입니다.

설명

기본값은 Httpserv.h 헤더 파일에 정의된 입니다 HTTP_USER_VARIABLE_SID.

구현자에 대한 참고 사항

IHttpUser 구현자는 이 데이터로 메모리 관리를 담당합니다. 따라서 IHttpUser 동적 메모리 할당을 사용하는 구현자는 더 이상 필요하지 않은 경우 또는 delete 포인터를 void 해제해야 합니다.

호출자 참고 사항

IHttpUser 구현자는 이 데이터를 사용하여 메모리 관리를 담당합니다. 따라서 IHttpUser 클라이언트는 이 데이터가 더 이상 필요하지 않을 때 또는 delete 반환 void 된 포인터를 해제해서는 안 됩니다. 또한 액세스 위반이 throw되거나 데이터가 유효하지 않으므로 클라이언트는 이 void 포인터에서 참조하는 메모리의 상태를 변경해서는 안 됩니다.

예제

다음 코드 예제에서는 응답 헤더 및 본문을 지우고 XML 문서로 클라이언트에 사용자 정보를 반환하는 HTTP 모듈을 만드는 방법을 보여 줍니다.

위의 코드는 응답 스트림에 다음과 유사한 XML을 씁니다.

<?xml version="1.0" ?>  
<user userName="DOMAIN\user" />  

모듈은 RegisterModule 함수를 내보내야 합니다. 프로젝트에 대한 모듈 정의(.def) 파일을 만들어 이 함수를 내보내거나 스위치를 사용하여 모듈을 /EXPORT:RegisterModule 컴파일할 수 있습니다. 자세한 내용은 연습: 네이티브 코드를 사용하여 Request-Level HTTP 모듈 만들기를 참조하세요.

필요에 따라 각 함수에 대한 호출 규칙을 명시적으로 선언하는 대신 호출 규칙을 사용하여 __stdcall (/Gz) 코드를 컴파일할 수 있습니다.

요구 사항

형식 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

참고 항목

IHttpUser 인터페이스