Share via


WsSetOutput, fonction (webservices.h)

Définit l’encodage et les rappels de sortie pour l’enregistreur. Les rappels sont utilisés pour fournir des mémoires tampons au rédacteur et pour effectuer des e/s asynchrones.

Syntaxe

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
);

Paramètres

[in] writer

Enregistreur pour lequel la sortie sera définie.

[in, optional] encoding

L’encodage décrit le format des octets d’entrée. Il doit s’agir de l’un des WS_XML_WRITER_TEXT_ENCODING, WS_XML_WRITER_BINARY_ENCODING ou WS_XML_WRITER_MTOM_ENCODING.

[in, optional] output

Spécifie l’emplacement où l’enregistreur doit placer ses données.

properties

Tableau de propriétés facultatives de l’enregistreur. Voir WS_XML_WRITER_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
E_INVALIDARG
Un ou plusieurs arguments ne sont pas valides.

Remarques

Lorsque WsSetOutput est utilisé sur l’enregistreur, l’enregistreur fonctionne de manière avancée uniquement et les fonctions WsGetWriterPosition, WsSetWriterPosition et WsMoveWriter ne peuvent pas être utilisées.

Si l’encodage a la valeur NULL, WS_XML_WRITER_OUTPUT est ignoré et l’enregistreur est configuré de sorte que toute tentative d’écriture échoue.

Si l’encodage n’est pas NULL, WS_XML_WRITER_OUTPUT doit également être non NULL .

Si WS_XML_WRITER_OUTPUT est WS_XML_WRITER_BUFFER_OUTPUT l’enregistreur met en mémoire tampon les octets générés du document. Utilisez WsGetWriterProperty avec WS_XML_WRITER_PROPERTY_BUFFERS ou WS_XML_WRITER_PROPERTY_BYTES pour obtenir ces octets. Dans ce mode , WsFlushWriter n’a aucun effet.

Si WS_XML_WRITER_OUTPUT est WS_XML_WRITER_STREAM_OUTPUT l’enregistreur passe les octets générés du document au WS_WRITE_CALLBACK spécifié lors des appels à WsFlushWriter.

L’enregistreur sera initialisé pour utiliser les propriétés spécifiées dans WsCreateWriter. Toutes les propriétés spécifiées à WsSetOutput remplacent ces propriétés.

Consultez WsCreateWriter pour connaître les valeurs par défaut des propriétés de l’enregistreur.

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