Функция WsStartWriterCanonicalization (webservices.h)
Запускает канонизацию для указанного модуля записи XML.
Синтаксис
HRESULT WsStartWriterCanonicalization(
[in] WS_XML_WRITER *writer,
[in] WS_WRITE_CALLBACK writeCallback,
[in] void *writeCallbackState,
const WS_XML_CANONICALIZATION_PROPERTY *properties,
[in] ULONG propertyCount,
[in, optional] WS_ERROR *error
);
Параметры
[in] writer
Модуль записи XML, с которого следует начать канонизацию.
[in] writeCallback
Обратный вызов, вызываемый для записи канонических байтов по мере их создания. Этот обратный вызов всегда будет вызываться синхронно.
[in] writeCallbackState
Состояние, определенное вызывающим, которое должно передаваться при вызове WS_WRITE_CALLBACK.
properties
Массив необязательных свойств, определяющих способ канонизации. См . WS_XML_CANONICALIZATION_PROPERTY.
[in] propertyCount
Количество свойств.
[in, optional] error
Указывает, где должны храниться дополнительные сведения об ошибке в случае сбоя функции.
Возвращаемое значение
Эта функция может возвращать одно из этих значений.
Код возврата | Описание |
---|---|
|
Один или несколько аргументов недопустимы. |
|
Операция не разрешена из-за текущего состояния объекта . |
|
Входные данные не были в ожидаемом формате или не имели ожидаемого значения. |
Комментарии
Шаблон использования для канонизации заключается в следующем:
- вызовите WsStartWriterCanonicalization,
- напишите xml для канонизации,
- вызовите WsEndWriterCanonicalization.
WsEndWriterCanonicalization должна вызываться на той же глубине, на которой была вызвана WsStartWriterCanonicalization . Другие API записи возвращают ошибку, если она перемещается на глубину ниже, чем там, где был вызван WsStartWriterCanonicalization .
Недопустимая операция вызова WsMoveWriter или WsSetWriterPosition для модуля записи между парой соответствующих вызовов WsStartWriterCanonicalization и WsEndWriterCanonicalization .
Вызовы этого API не могут быть вложенными. Таким образом, за вызовом WsStartWriterCanonicalization должен следовать вызов WsEndWriterCanonicalization перед следующим вызовом WsStartWriterCanonicalization .
Если WS_XML_CANONICALIZATION_ALGORITHM не указан, используется WS_EXCLUSIVE_XML_CANONICALIZATION_ALGORITHM .
Алгоритмы WS_INCLUSIVE_XML_CANONICALIZATION_ALGORITHM и WS_INCLUSIVE_WITH_COMMENTS_XML_CANONICALIZATION_ALGORITHM можно использовать только со всеми xml-документами. Модуль записи должен находиться в WS_XML_NODE_TYPE_BOF при вызове WsStartWriterCanonicalization с помощью этих алгоритмов.
Требования
Минимальная версия клиента | Windows 7 [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 R2 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | webservices.h |
Библиотека | WebServices.lib |
DLL | WebServices.dll |