Поделиться через


Функция WsSetOutput (webservices.h)

Задает кодирование и обратные вызовы выходных данных для модуля записи. Обратные вызовы используются для передачи буферов в модуль записи и для выполнения асинхронного ввода-вывода.

Синтаксис

HRESULT WsSetOutput(
  [in]           WS_XML_WRITER                *writer,
  [in, optional] const WS_XML_WRITER_ENCODING *encoding,
  [in, optional] const WS_XML_WRITER_OUTPUT   *output,
                 const WS_XML_WRITER_PROPERTY *properties,
  [in]           ULONG                        propertyCount,
  [in, optional] WS_ERROR                     *error
);

Параметры

[in] writer

Модуль записи, для которого будут заданы выходные данные.

[in, optional] encoding

Кодировка описывает формат входных байтов. Это должен быть один из WS_XML_WRITER_TEXT_ENCODING, WS_XML_WRITER_BINARY_ENCODING или WS_XML_WRITER_MTOM_ENCODING.

[in, optional] output

Указывает, где модуль записи должен размещать свои данные.

properties

Массив необязательных свойств модуля записи. См . WS_XML_WRITER_PROPERTY.

[in] propertyCount

Количество свойств.

[in, optional] error

Указывает, где должны храниться дополнительные сведения об ошибке в случае сбоя функции.

Возвращаемое значение

Эта функция может возвращать одно из этих значений.

Код возврата Описание
E_INVALIDARG
Один или несколько аргументов являются недопустимыми.

Комментарии

Если wsSetOutput используется в записи, модуль записи будет работать только вперед, и функции WsGetWriterPosition, WsSetWriterPosition и WsMoveWriter нельзя использовать.

Если кодировка имеет значение NULL, WS_XML_WRITER_OUTPUT игнорируется, а модуль записи настраивается таким образом, что любая попытка записи в него завершится ошибкой.

Если кодировка не имеет значение NULL, то WS_XML_WRITER_OUTPUT также должен иметь значение, отличное от NULL.

Если WS_XML_WRITER_OUTPUTWS_XML_WRITER_BUFFER_OUTPUT модуль записи буферизует созданные байты документа. Чтобы получить эти байты, используйте WsGetWriterProperty с WS_XML_WRITER_PROPERTY_BUFFERS или WS_XML_WRITER_PROPERTY_BYTES . В этом режиме WsFlushWriter не действует.

Если WS_XML_WRITER_OUTPUTWS_XML_WRITER_STREAM_OUTPUT то модуль записи передает созданные байты документа указанному WS_WRITE_CALLBACK во время вызовов WsFlushWriter.

Модуль записи будет инициализирован для использования свойств, указанных в WsCreateWriter. Все свойства , указанные для WsSetOutput , переопределяют эти свойства.

Значения по умолчанию свойств модуля записи см. в разделе WsCreateWriter .

Требования

   
Минимальная версия клиента Windows 7 [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 R2 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header webservices.h
Библиотека WebServices.lib
DLL WebServices.dll