WsStartWriterCanonicalization-Funktion (webservices.h)
Startet die Kanonisierung für den angegebenen XML-Writer.
Syntax
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
);
Parameter
[in] writer
Der XML-Writer, für den die Kanonisierung gestartet werden soll.
[in] writeCallback
Der Rückruf, der aufgerufen werden soll, um die kanonischen Bytes zu schreiben, während sie generiert werden. Dieser Rückruf wird immer synchron aufgerufen.
[in] writeCallbackState
Vom Aufrufer definierter Zustand, der beim Aufrufen des WS_WRITE_CALLBACK übergeben werden soll.
properties
Ein Array optionaler Eigenschaften, die steuern, wie die Kanonisierung ausgeführt werden soll. Siehe WS_XML_CANONICALIZATION_PROPERTY.
[in] propertyCount
Die Anzahl der Eigenschaften.
[in, optional] error
Gibt an, wo zusätzliche Fehlerinformationen gespeichert werden sollen, wenn die Funktion fehlschlägt.
Rückgabewert
Diese Funktion kann einen dieser Werte zurückgeben.
Rückgabecode | Beschreibung |
---|---|
|
Mindestens ein Argument ist ungültig. |
|
Der Vorgang ist aufgrund des aktuellen Zustands des Objekts nicht zulässig. |
|
Die Eingabedaten waren nicht im erwarteten Format oder hatten nicht den erwarteten Wert. |
Hinweise
Das Verwendungsmuster für die Kanonisierung ist:
- rufen Sie WsStartWriterCanonicalization auf,
- die zu kanonisierende XML-Datei schreiben,
- rufen Sie WsEndWriterCanonicalization auf.
WsEndWriterCanonicalization muss in der gleichen Tiefe aufgerufen werden, in der WsStartWriterCanonicalization aufgerufen wurde. Andere Writer-APIs geben einen Fehler zurück, wenn sie sich in eine Tiefe unterhalb des Aufrufs von WsStartWriterCanonicalization bewegen würden.
Es ist ein ungültiger Vorgang, WsMoveWriter oder WsSetWriterPosition für einen Writer zwischen einem Paar übereinstimmenden WsStartWriterCanonicalization - und WsEndWriterCanonicalization-Aufrufen aufzurufen.
Aufrufe dieser API können nicht geschachtelt werden. Auf einen Aufruf von WsStartWriterCanonicalization muss also ein Aufruf von WsEndWriterCanonicalization vor dem nächsten WsStartWriterCanonicalization-Aufruf folgen.
Wenn kein WS_XML_CANONICALIZATION_ALGORITHM angegeben wird, wird WS_EXCLUSIVE_XML_CANONICALIZATION_ALGORITHM verwendet.
Die Algorithmen WS_INCLUSIVE_XML_CANONICALIZATION_ALGORITHM und WS_INCLUSIVE_WITH_COMMENTS_XML_CANONICALIZATION_ALGORITHM können nur mit gesamten XML-Dokumenten verwendet werden. Der Writer muss bei WS_XML_NODE_TYPE_BOF positioniert werden, wenn WsStartWriterCanonicalization mit diesen Algorithmen aufgerufen wird.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 7 [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | webservices.h |
Bibliothek | WebServices.lib |
DLL | WebServices.dll |