다음을 통해 공유


WsWriteEnvelopeStart 함수(webservices.h)

메시지의 현재 헤더 집합을 포함하여 메시지의 시작을 작성하고 본문 요소를 작성할 준비를 합니다.

이 함수는 채널이 아닌 대상에 메시지를 쓰도록 설계되었습니다. 채널에 메시지를 쓰려면 WsWriteMessageStart를 사용합니다.

구문

HRESULT WsWriteEnvelopeStart(
  [in]           WS_MESSAGE               *message,
  [in]           WS_XML_WRITER            *writer,
  [in, optional] WS_MESSAGE_DONE_CALLBACK doneCallback,
  [in, optional] void                     *doneCallbackState,
  [in, optional] WS_ERROR                 *error
);

매개 변수

[in] message

Message 개체에 대한 포인터입니다. 포인터는 유효한 WS_MESSAGE 개체를 참조해야 합니다.

[in] writer

Message를 작성할 XML Writer 개체에 대한 포인터입니다. Message 개체는 후속 호출에서 기록기를 사용하여 메시지를 작성합니다. 호출자는 WsResetMessage 또는 WsFreeMessage 가 호출될 때까지 작성 기를 유효한 상태로 유지해야 합니다.

WS_MESSAGE_DONE_CALLBACK 매개 변수를 사용하여 WS_XML_WRITER 더 이상 사용되지 않는지 확인할 수 있습니다.

[in, optional] doneCallback

메시지가 해제되거나 다시 설정될 때 호출되는 콜백 함수입니다. 이 콜백을 사용하여 WS_XML_WRITER 개체가 이 메시지에서 더 이상 사용되지 않음을 나타낼 수 있습니다. 이 함수가 실패하면 콜백이 호출되지 않습니다. 함수가 성공하면 콜백이 한 번만 호출됩니다.

[in, optional] doneCallbackState

지정된 콜백에 전달될 사용자 정의 상태에 대한 void 포인터입니다. 이 매개 변수는 NULL일 수 있습니다.

[in, optional] error

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

반환 값

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

반환 코드 설명
WS_E_INVALID_FORMAT
입력 데이터가 예상 형식이 아니거나 예상 값이 없습니다.
E_OUTOFMEMORY
메모리가 부족합니다.
E_INVALIDARG
하나 이상의 인수가 잘못되었습니다.
기타 오류
이 함수는 위에 나열되지 않은 다른 오류를 반환할 수 있습니다.

설명

메시지에 있는 현재 헤더 집합을 포함하여 메시지의 시작은 작성기에 기록됩니다.

메시지 상태는 WS_MESSAGE_STATE_INITIALIZED 설정해야 합니다. 성공하면 메시지 상태가 WS_MESSAGE_STATE_WRITING 전환됩니다.
실패 시 상태 전환이 발생하지 않습니다.

메시지 본문의 요소를 작성하려면 WsWriteBody를 사용합니다. 메시지의 작성기에 직접 쓰려면 WS_MESSAGE_PROPERTY_BODY_WRITER 속성으로 설정된 WS_MESSAGE_PROPERTY_ID 사용하여 Reader를 가져옵니다.

요구 사항

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