Partager via


WsCreateWriter, fonction (webservices.h)

crée un enregistreur XML avec les propriétés spécifiées.

Syntaxe

HRESULT WsCreateWriter(
                 const WS_XML_WRITER_PROPERTY *properties,
  [in]           ULONG                        propertyCount,
                 WS_XML_WRITER                **writer,
  [in, optional] WS_ERROR                     *error
);

Paramètres

properties

Tableau de structures WS_XML_WRITER_PROPERTY contenant des propriétés facultatives pour l’enregistreur XML.

La valeur de ce paramètre peut être NULL, auquel cas le paramètre propertyCount doit être égal à 0 (zéro).

[in] propertyCount

Nombre de propriétés dans le tableau de propriétés .

writer

En cas de réussite, pointeur qui reçoit l’adresse de l’WS_XML_WRITER structure représentant le writer XML créé.

Lorsque vous n’avez plus besoin de cette structure, vous devez la libérer en appelant WsFreeWriter.

[in, optional] error

Pointeur vers une structure de WS_ERROR qui reçoit des informations d’erreur supplémentaires en cas d’échec de la fonction.

Valeur retournée

Si la fonction réussit, elle retourne NO_ERROR ; sinon, elle retourne un code d’erreur HRESULT.

Code de retour Description
E_INVALIDARG
Un ou plusieurs arguments ne sont pas valides.

Remarques

Utilisez les fonctions WsSetOutput ou WsSetOutputToBuffer pour choisir l’encodage du writer XML et indiquer où diriger la sortie.

Une WS_XML_WRITER peut être réutilisée en appelant à nouveau WsSetOutput ou WsSetOutputToBuffer .

Consultez WS_XML_WRITER_PROPERTY_ID pour connaître les propriétés qui peuvent être utilisées pour configurer l’enregistreur.

L’enregistreur XML met en mémoire tampon toutes les données jusqu’à ce que WsFlushWriter soit appelé. Cela permet à l’appelant de déterminer à quelle granularité écrire des données et s’il faut écrire ces données de façon asynchrone. Les données ne sont pas écrites tant que WsFlushWriter n’est pas appelé.

Si une opération sur un WS_XML_WRITER échoue, l’enregistreur est laissé dans un état défectueux et d’autres appels au writer retournent WS_E_OBJECT_FAULTED. (Voir Valeurs de retour des services Web Windows.) Les seuls appels de fonction possibles pour le writer XML si cela se produit sont WsSetOutput et WsSetOutputToBuffer pour retourner le writer XML à un état utilisable, ou WsFreeWriter pour libérer le writer XML.

Configuration requise

Condition requise Valeur
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