WsStartWriterCanonicalization, fonction (webservices.h)
Démarre la canonisation sur l’enregistreur XML spécifié.
Syntaxe
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
);
Paramètres
[in] writer
Enregistreur XML sur lequel la canonicalisation doit être démarrée.
[in] writeCallback
Rappel à appeler pour écrire les octets canoniques au fur et à mesure qu’ils sont générés. Ce rappel sera toujours appelé de manière synchrone.
[in] writeCallbackState
État défini par l’appelant qui doit être passé lors de l’appel du WS_WRITE_CALLBACK.
properties
Tableau de propriétés facultatives contrôlant la façon dont la canonicalisation doit être effectuée. Voir WS_XML_CANONICALIZATION_PROPERTY.
[in] propertyCount
Nombre de propriétés.
[in, optional] error
Spécifie l’emplacement où les informations d’erreur supplémentaires doivent être stockées en cas d’échec de la fonction.
Valeur retournée
Cette fonction peut retourner l’une de ces valeurs.
Code de retour | Description |
---|---|
|
Un ou plusieurs arguments ne sont pas valides. |
|
L’opération n’est pas autorisée en raison de l’état actuel de l’objet. |
|
Les données d’entrée n’étaient pas au format attendu ou n’avaient pas la valeur attendue. |
Remarques
Le modèle d’utilisation de la canonicalisation consiste à :
- appelez WsStartWriterCanonicalization,
- écrire le xml à canoniser,
- appelez WsEndWriterCanonicalization.
WsEndWriterCanonicalization doit être appelé à la même profondeur à laquelle WsStartWriterCanonicalization a été appelée. D’autres API d’enregistreur retournent une erreur si elles se déplacent vers une profondeur inférieure à l’endroit où WsStartWriterCanonicalization a été appelée.
Il s’agit d’une opération non valide pour appeler WsMoveWriter ou WsSetWriterPosition sur un enregistreur entre une paire d’appels WsStartWriterCanonicalization et WsEndWriterCanonicalization correspondants .
Les appels à cette API ne peuvent pas être imbriqués. Par conséquent, un appel à WsStartWriterCanonicalization doit être suivi d’un appel à WsEndWriterCanonicalization avant l’appel WsStartWriterCanonicalization suivant.
Si aucun WS_XML_CANONICALIZATION_ALGORITHM n’est spécifié, WS_EXCLUSIVE_XML_CANONICALIZATION_ALGORITHM est utilisé.
Les algorithmes WS_INCLUSIVE_XML_CANONICALIZATION_ALGORITHM et WS_INCLUSIVE_WITH_COMMENTS_XML_CANONICALIZATION_ALGORITHM ne peuvent être utilisés qu’avec des documents xml entiers. L’enregistreur doit se positionner à WS_XML_NODE_TYPE_BOF lorsque WsStartWriterCanonicalization est appelé avec ces algorithmes.
Configuration requise
Client minimal pris en charge | Windows 7 [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau | Applications UWP] |
Plateforme cible | Windows |
En-tête | webservices.h |
Bibliothèque | WebServices.lib |
DLL | WebServices.dll |