Partager via


WsGetCustomHeader, fonction (webservices.h)

Recherche un en-tête défini par l’application du message et le désérialise.

Syntaxe

HRESULT WsGetCustomHeader(
  [in]           WS_MESSAGE                   *message,
  [in]           const WS_ELEMENT_DESCRIPTION *customHeaderDescription,
  [in]           WS_REPEATING_HEADER_OPTION   repeatingOption,
  [in]           ULONG                        headerIndex,
  [in]           WS_READ_OPTION               readOption,
  [in, optional] WS_HEAP                      *heap,
                 void                         *value,
  [in]           ULONG                        valueSize,
                 ULONG                        *headerAttributes,
  [in, optional] WS_ERROR                     *error
);

Paramètres

[in] message

Message contenant l’en-tête.

Le message peut être dans n’importe quel état , mais WS_MESSAGE_STATE_EMPTY.

[in] customHeaderDescription

Une WS_ELEMENT_DESCRIPTION qui décrit l’élément header.

[in] repeatingOption

Indique si l’en-tête peut apparaître plusieurs fois dans le message.

Si WS_REPEATING_HEADER est utilisé, l’index d’en-tête indique lequel des en-têtes avec le nom d’en-tête spécifié doit retourner.

Si WS_SINGLETON_HEADER est utilisé, la valeur headerIndex doit être égale à zéro.

[in] headerIndex

Index de base zéro de l’en-tête dans l’ensemble d’en-têtes avec le nom d’en-tête spécifié.

[in] readOption

Indique si la valeur est requise et comment allouer la valeur. Pour plus d’informations , consultez WS_READ_OPTION .

[in, optional] heap

Tas dans lequel stocker les données d’en-tête désérialisées. Si cette valeur est NULL, le tas de message est utilisé comme requis par le WS_READ_OPTION.

value

L’interprétation de ce paramètre dépend du WS_READ_OPTION.

[in] valueSize

L’interprétation de ce paramètre dépend du WS_READ_OPTION.

headerAttributes

Retourne la WS_HEADER_ATTRIBUTES pour cet en-tête. Le pointeur peut avoir la valeur NULL, auquel cas aucun attribut n’est retourné.

[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
WS_E_INVALID_FORMAT
L’en-tête n’existe pas et est obligatoire.

WS_SINGLETON_HEADER a été spécifié, et plusieurs instances du type d’en-tête sont présentes dans le message.

Les données d’entrée n’étaient pas au format attendu.

WS_E_QUOTA_EXCEEDED
Le quota de taille du tas a été dépassé.
E_OUTOFMEMORY
La mémoire disponible n’était pas suffisante pour désérialiser l’en-tête.
E_INVALIDARG
Un ou plusieurs des paramètres sont incorrects.
Autres erreurs
Cette fonction peut renvoyer d’autres erreurs non répertoriées ci-dessus.

Remarques

Cette API fonctionne sur des en-têtes ciblés sur le récepteur final.
Les en-têtes ciblés avec un rôle/acteur autre que le récepteur final sont ignorés par cette API.

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