WsOpenListener 함수(webservices.h)

지정된 주소에서 "수신 대기"를 시작합니다. 수신기가 열리면 채널에서 수락할 수 있습니다. 열기에 성공하면 수신기 리소스를 해제하기 전에 WsCloseListener 함수를 사용하여 수신기를 닫아야 합니다.

구문

HRESULT WsOpenListener(
  [in]           WS_LISTENER            *listener,
  [in]           const WS_STRING        *url,
  [in, optional] const WS_ASYNC_CONTEXT *asyncContext,
  [in, optional] WS_ERROR               *error
);

매개 변수

[in] listener

수신기 개체에 대한 포인터입니다. 포인터는 유효한 WS_LISTENER 개체를 참조해야 하며 참조된 값은 NULL이 아닐 수 있습니다.

[in] url

수신기의 URL 주소 문자열을 포함하는 개체에 대한 포인터입니다.

참고 URL은 항상 이스케이프된 형식입니다. URL에 쿼리 문자열 또는 조각이 포함될 수 없습니다. 이 URL은 호스트 이름 부분이나 호스트 이름 또는 리터럴 IP 주소에 '+' 또는 '*' 와일드카드를 포함할 수 있습니다. URL에 대한 자세한 내용은 비고를 참조하세요.
 

[in, optional] asyncContext

함수를 비동기적으로 호출하는 방법에 대한 정보가 있는 A WS_ASYNC_CONTEXT 개체에 대한 포인터입니다. 동기적으로 호출하는 경우 값은 NULL 로 설정됩니다.

[in, optional] error

함수가 실패할 경우 오류에 대한 추가 정보를 저장해야 하는 WS_ERROR 개체에 대한 포인터입니다.

반환 값

이 함수는 이러한 값 중 하나를 반환할 수 있습니다.

반환 코드 설명
WS_S_ASYNC
비동기 작업은 아직 보류 중입니다.
WS_E_OPERATION_ABORTED
수신기가 열려 있는 동안 또는 열기 전에 중단되었습니다.
WS_E_INVALID_OPERATION
수신기가 잘못된 상태입니다.
WS_E_ADDRESS_IN_USE
주소가 이미 사용되고 있습니다.
WS_E_ADDRESS_NOT_AVAILABLE
주소가 이 컨텍스트에 유효하지 않습니다.
WS_E_QUOTA_EXCEEDED
할당량을 초과했습니다.
WS_E_OPERATION_ABORTED
작업이 중단되었습니다.
WS_E_OPERATION_TIMED_OUT
할당된 시간 내에 작업이 완료되지 않았습니다.
E_OUTOFMEMORY
메모리가 부족합니다.
E_INVALIDARG
하나 이상의 인수가 잘못되었습니다.
기타 오류
이 함수는 위에 나열되지 않은 다른 오류를 반환할 수 있습니다.

설명

IPv6 주소를 사용하는 경우 호스트 이름 부분에 대괄호로 묶어야 합니다.

자세한 내용은 WS_HTTP_CHANNEL_BINDING 참조하세요.

WS_UDP_CHANNEL_BINDING 경우 URL의 경로 부분은 무시됩니다. 리터럴 IP 주소가 지정된 경우 수신 대기에 사용되며, 그렇지 않으면 와일드카드 IP 주소가 사용됩니다.

WS_TCP_CHANNEL_BINDING 경우 URL의 경로 부분이 수신된 URL에 대한 접두사로 일치합니다.
리터럴 IP 주소가 지정된 경우 수신 대기에 사용되며, 그렇지 않으면 와일드카드 IP 주소가 사용됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 webservices.h
라이브러리 WebServices.lib
DLL WebServices.dll