Функция 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
Указатель на объект модуля записи XML для записи сообщения. Объект Message использует модуль записи в последующих вызовах для записи сообщения. Вызывающий объект должен держать модуль записи действительным до вызова WsResetMessage или WsFreeMessage .
С помощью параметра WS_MESSAGE_DONE_CALLBACK можно определить, что WS_XML_WRITER больше не используется.
[in, optional] doneCallback
Функция обратного вызова, вызываемая при освобождении или сбросе сообщения. Этот обратный вызов можно использовать, чтобы указать, что WS_XML_WRITER объект больше не используется этим сообщением. Если эта функция завершается сбоем, обратный вызов не вызывается. Если функция выполняется успешно, обратный вызов вызывается только один раз.
[in, optional] doneCallbackState
Пустой указатель на определяемое пользователем состояние, которое будет передано указанному обратному вызову. Этот параметр может иметь значение NULL.
[in, optional] error
Указатель на объект WS_ERROR , в котором должны храниться дополнительные сведения об ошибке в случае сбоя функции.
Возвращаемое значение
Эта функция может возвращать одно из этих значений.
Код возврата | Описание |
---|---|
|
Входные данные не были в ожидаемом формате или не имели ожидаемого значения. |
|
Не хватает памяти. |
|
Один или несколько аргументов недопустимы. |
|
Эта функция может возвращать другие ошибки, не перечисленные выше. |
Комментарии
Начало сообщения, включая текущий набор заголовков, которые существуют в сообщении, записываются в модуль записи.
Для сообщения необходимо задать состояние WS_MESSAGE_STATE_INITIALIZED. При успешном выполнении состояние сообщения переходит в WS_MESSAGE_STATE_WRITING.
При сбое переход состояния не происходит.
Для записи элемента текста сообщения используйте WsWriteBody. Чтобы выполнить запись непосредственно в модуль записи сообщения, получите средство чтения с WS_MESSAGE_PROPERTY_ID свойством WS_MESSAGE_PROPERTY_BODY_WRITER .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7 [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 R2 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | webservices.h |
Библиотека | WebServices.lib |
DLL | WebServices.dll |