WS_MESSAGE_PROPERTY_ID-Enumeration (webservices.h)

Jede Nachrichteneigenschaft ist vom Typ WS_MESSAGE_PROPERTY, wird durch eine ID identifiziert und weist einen zugeordneten Wert auf.

Syntax

typedef enum {
  WS_MESSAGE_PROPERTY_STATE = 0,
  WS_MESSAGE_PROPERTY_HEAP = 1,
  WS_MESSAGE_PROPERTY_ENVELOPE_VERSION = 2,
  WS_MESSAGE_PROPERTY_ADDRESSING_VERSION = 3,
  WS_MESSAGE_PROPERTY_HEADER_BUFFER = 4,
  WS_MESSAGE_PROPERTY_HEADER_POSITION = 5,
  WS_MESSAGE_PROPERTY_BODY_READER = 6,
  WS_MESSAGE_PROPERTY_BODY_WRITER = 7,
  WS_MESSAGE_PROPERTY_IS_ADDRESSED = 8,
  WS_MESSAGE_PROPERTY_HEAP_PROPERTIES = 9,
  WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES = 10,
  WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES = 11,
  WS_MESSAGE_PROPERTY_IS_FAULT = 12,
  WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS = 13,
  WS_MESSAGE_PROPERTY_USERNAME = 14,
  WS_MESSAGE_PROPERTY_ENCODED_CERT = 15,
  WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN = 16,
  WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN = 17,
  WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN = 18,
  WS_MESSAGE_PROPERTY_SAML_ASSERTION = 19,
  WS_MESSAGE_PROPERTY_SECURITY_CONTEXT = 20,
  WS_MESSAGE_PROPERTY_PROTECTION_LEVEL = 21
} WS_MESSAGE_PROPERTY_ID;

Konstanten

 
WS_MESSAGE_PROPERTY_STATE
Wert: 0
Diese Eigenschaft wird mit WsGetMessageProperty verwendet.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist der aktuelle WS_MESSAGE_STATE der Nachricht.

Diese Eigenschaft ist in allen Nachrichtenzuständen verfügbar.
WS_MESSAGE_PROPERTY_HEAP
Wert: 1
Diese Eigenschaft wird mit WsGetMessageProperty verwendet.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist das WS_HEAP der Nachricht. Der Heap ist
im Besitz der Nachricht. Ein Benutzer einer Nachricht kann zusätzliche
Zuordnungen innerhalb dieses Heaps. Zuordnungen innerhalb des Heaps werden freigegeben.
, wenn eine Nachricht zurückgesetzt/freigegeben wird.


Der Benutzer des zurückgegebenen Heaps sollte WsResetHeap nicht auf dem Heap aufrufen. Dies führt zu einem nicht definierten Verhalten.


Das Nachrichtenobjekt verwendet das Heapobjekt nur dann, wenn eines von
Die Nachrichten-APIs werden aufgerufen.


Diese Eigenschaft ist in allen Nachrichtenzuständen mit Ausnahme WS_MESSAGE_STATE_EMPTY verfügbar.
Die Verwendung des Heaps einer leeren Nachricht führt zu einem nicht definierten Verhalten.
WS_MESSAGE_PROPERTY_ENVELOPE_VERSION
Wert: 2
Diese Eigenschaft wird mit WsGetMessageProperty verwendet.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist das WS_ENVELOPE_VERSION der Nachricht.


Beim Erstellen einer Nachricht mit WsCreateMessage
Envelope-Version wird als expliziter Parameter angegeben (stattdessen
von als Eigenschaft).


Diese Eigenschaft kann angegeben werden, wenn Nachrichteneigenschaften mit
die WS_MESSAGE_PROPERTIES-Struktur .


Diese Eigenschaft ist in allen Nachrichtenzuständen mit Ausnahme WS_MESSAGE_STATE_EMPTY verfügbar.
WS_MESSAGE_PROPERTY_ADDRESSING_VERSION
Wert: 3
Diese Eigenschaft wird mit WsGetMessageProperty verwendet.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist das WS_ADDRESSING_VERSION der Nachricht.


Beim Erstellen einer Nachricht mit WsCreateMessage
Adressierungsversion wird als expliziter Parameter angegeben (stattdessen
von als Eigenschaft).


Diese Eigenschaft kann angegeben werden, wenn Nachrichteneigenschaften mit
die WS_MESSAGE_PROPERTIES-Struktur .


Diese Eigenschaft ist in allen Nachrichtenzuständen mit Ausnahme WS_MESSAGE_STATE_EMPTY verfügbar.
WS_MESSAGE_PROPERTY_HEADER_BUFFER
Wert: 4
Diese Eigenschaft wird mit WsGetMessageProperty verwendet.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist ein WS_XML_BUFFER , das die Header enthält.
der Nachricht (sowie der Umschlag- und Textkörperelemente).


Dieser Puffer ist gültig, bis die Nachricht zurückgesetzt/freigegeben wird.


Diese Eigenschaft ist in allen Nachrichtenzuständen mit Ausnahme WS_MESSAGE_STATE_EMPTY verfügbar.
WS_MESSAGE_PROPERTY_HEADER_POSITION
Wert: 5
Diese Eigenschaft wird mit WsGetMessageProperty verwendet.

Das begleitende Wertmember der WS_MESSAGE_PROPERTY-Struktur ist das WS_XML_NODE_POSITION des Headerelements innerhalb des Headerpuffers (das Element, das alle elemente enthält.
die Nachrichtenheader als untergeordnete Elemente). Der Headerpuffer selbst kann
mit WS_MESSAGE_PROPERTY_HEADER_BUFFER.


Eine Anwendung kann die zurückgegebene WS_XML_NODE_POSITION als Startversion verwenden.
punkt beim manuellen Lesen oder Schreiben von Headern (wenn WsSetHeader nicht verwendet wird,
WsGetHeader, WsGetCustomHeader oder WsAddCustomHeader).
Die Position kann beispielsweise an WsSetWriterPosition oder übergeben werden.
WsSetReaderPosition , um einen XML-Reader oder XML Writer innerhalb der WS_XML_BUFFER zu positionieren, die die Header enthält. Darüber hinaus gilt:
WsMoveReader oder WsMoveWriter kann verwendet werden, um relativ zu verschieben.
auf die festgelegte Position.


Wenn die Header einer Nachricht gelesen werden (über WsReadMessageStart oder
WsReadEnvelopeStart wird automatisch ein Headerelement hinzugefügt.
Headerpuffer, wenn in der gelesenen Nachricht kein Puffer vorhanden ist. Wenn eine Nachricht initialisiert wird
(über WsInitializeMessage) wird automatisch ein Headerelement hinzugefügt.
an die Nachricht.


Diese Eigenschaft ist in allen Nachrichtenzuständen mit Ausnahme WS_MESSAGE_STATE_EMPTY verfügbar.


Die Headerposition ist gültig, bis die Nachricht zurückgesetzt oder freigegeben wird.
WS_MESSAGE_PROPERTY_BODY_READER
Wert: 6
Diese Eigenschaft wird mit WsGetMessageProperty verwendet.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist ein WS_XML_READER , das zum Lesen verwendet werden kann.
der Textkörper der Nachricht.


Der Reader gehört dem Nachrichtenobjekt und ist nur gültig.
bis entweder WsFreeMessage oder WsResetMessage aufgerufen werden.


Diese Eigenschaft ist nur verfügbar, wenn die Nachricht
in WS_MESSAGE_STATE_READING Zustand.
WS_MESSAGE_PROPERTY_BODY_WRITER
Wert: 7
Diese Eigenschaft wird mit WsGetMessageProperty verwendet.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist ein WS_XML_WRITER , das zum Schreiben verwendet werden kann
der Textkörper der Nachricht.


Diese Eigenschaft ist nur verfügbar, wenn die Nachricht in
WS_MESSAGE_STATE_WRITING Zustand.


Der Writer gehört dem Nachrichtenobjekt und ist nur gültig.
bis entweder WsFreeMessage oder WsResetMessage aufgerufen werden.
WS_MESSAGE_PROPERTY_IS_ADDRESSED
Wert: 8
Diese Eigenschaft wird mit WsGetMessageProperty verwendet.


Das zugehörige Wertelement der WS_MESSAGE_PROPERTY-Struktur ist ein BOOL , das angibt, ob die Nachricht über
wurde behandelt.


Wenn eine Nachricht erstellt oder zurückgesetzt wird, lautet diese Eigenschaft
auf FALSE festgelegt.


Wenn eine Nachricht gelesen wird (WsReadMessageStart oder
WsReadEnvelopeStart, dann ist diese Eigenschaft
auf TRUE festgelegt.


Diese Eigenschaft ist in allen Nachrichtenzuständen mit Ausnahme WS_MESSAGE_STATE_EMPTY verfügbar.


Weitere Informationen finden Sie unter WsAddressMessage .
WS_MESSAGE_PROPERTY_HEAP_PROPERTIES
Wert: 9
Diese Eigenschaft wird mit WsCreateMessage verwendet, um die Eigenschaften anzugeben.
der der Nachricht zugeordneten WS_HEAP .


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist vom Typ WS_HEAP_PROPERTIES.


Der Heap wird verwendet, um die Header der Nachricht zu puffern.


Die folgenden Heapeigenschaften können angegeben werden:


WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES
Wert: 10
Diese Eigenschaft wird mit WsCreateMessage verwendet, um Eigenschaften anzugeben.
die für XML-Reader gelten, die mit der Nachricht verwendet werden.


Diese XML Reader-Eigenschaften werden vom Nachrichtenobjekt beim Lesen von Headern verwendet.
Darüber hinaus verwenden Kanäle diese Eigenschaften für die Leser, die sie zum Lesen erstellen.
Nachrichten.


Das zugehörige Wertelement der WS_MESSAGE_PROPERTY-Struktur ist vom Typ WS_XML_READER_PROPERTIES.


Die folgenden Eigenschaften können angegeben werden:


WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES
Wert: 11
Diese Eigenschaft wird mit WsCreateMessage verwendet, um die Eigenschaften anzugeben.
der XML-Writer , die mit der Nachricht verwendet werden.


Diese XML Writer-Eigenschaften werden vom Nachrichtenobjekt beim Schreiben von Headern verwendet.
Darüber hinaus verwenden Kanäle diese Eigenschaften für die Autoren, die sie zum Schreiben erstellen.
Nachrichten.


Das zugehörige Wertelement der WS_MESSAGE_PROPERTY-Struktur ist vom Typ WS_XML_WRITER_PROPERTIES.


Die folgenden Eigenschaften können angegeben werden:


WS_MESSAGE_PROPERTY_IS_FAULT
Wert: 12
Diese Eigenschaft wird mit WsGetMessageProperty oder WsSetMessageProperty verwendet, um anzugeben, ob eine Nachricht einen Fehler enthält.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist ein BOOL.

Wenn eine Nachricht gelesen wird (WsReadMessageStart oder WsReadEnvelopeStart),
Diese Eigenschaft wird entsprechend festgelegt, ob das erste Element des Textkörpers ein Fehler ist.
-Element untergeordnet. Eine Anwendung kann diese Eigenschaft testen, um zu entscheiden, ob
, um den Text als Fehler zu lesen. Verwenden Sie WsReadBody, um den Text als Fehler zu lesen.
mit WS_FAULT_TYPE , um eine WS_FAULT zu erhalten.


Wenn eine Nachricht geschrieben wird (WsWriteMessageStart oder WsWriteEnvelopeStart)
Diese Eigenschaft kann verwendet werden, um anzugeben, ob die Anwendung einen Fehler schreibt oder nicht
im Textkörper. Einige Kanäle verwenden diese Informationen, um zu bestimmen, wie
senden Sie die Nachricht. Beispielsweise sendet HTTP anstelle von 200 einen Code mit 500 status für Fehler.


Wenn eine Nachricht mithilfe von WsInitializeMessage mit initialisiert wird
WS_FAULT_MESSAGE ist die Eigenschaft auf TRUE festgelegt.
Bei anderen WS_MESSAGE_INITIALIZATION Werten ist die Eigenschaft auf FALSE festgelegt.


Diese Eigenschaft ist in allen Nachrichtenzuständen mit Ausnahme WS_MESSAGE_STATE_EMPTY verfügbar.
WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS
Wert: 13
Diese Eigenschaft wird mit WsCreateMessage verwendet, um die maximale Anzahl von Headern anzugeben.
die bei der Verarbeitung der Nachrichtenheader zulässig ist.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist ein ULONG.

Der Zweck dieses Grenzwerts besteht darin, eine Obergrenze für die Anzahl der Iterationen festzulegen.
Die Überprüfung eines Headers wurde aufgewendet.


Da eine Anwendung den Inhalt des Headerpuffers direkt ändern kann,
dieser Grenzwert wird nicht in allen Fällen erzwungen. Es wird nur erzwungen, wenn einer der
Die Headerzugriffs-APIs werden verwendet (WsSetHeader, WsGetHeader,
WsGetCustomHeader oder WsGetMappedHeader).


Der Standardwert ist 64.
WS_MESSAGE_PROPERTY_USERNAME
Wert: 14
Diese Eigenschaft wird mit WsGetMessageProperty verwendet, um den Absender abzurufen.
Benutzername aus einer empfangenen Nachricht, wenn Die Sicherheit auf Benutzername/Kennwort basiert
ist aktiviert, oder wenn ein benutzerdefinierter Kanal den Wert festgelegt hat.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist eine WS_STRING-Struktur .

Der zurückgegebene Wert ist gut, bis die Nachricht freigegeben oder zurückgesetzt wird.


Ein benutzerdefinierter Kanal kann WsSetMessageProperty zum Festlegen verwenden.
der Benutzername des Absenders aus der Nachricht, wenn er Benutzername/Kennwort unterstützt
basierende Sicherheit. Die Funktion macht eine Kopie des angegebenen Werts.


Diese Eigenschaft ist in allen Nachrichtenzuständen verfügbar, außer
WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_ENCODED_CERT
Wert: 15
Diese Eigenschaft wird mit WsGetMessageProperty verwendet, um den Absender abzurufen.
Zertifikat einer empfangenen Nachricht als codierte Bytes, wenn
ein zertifikatbasierter Sicherheitsmodus (z. B. SSL) aktiviert ist,
oder, wenn ein benutzerdefinierter Kanal den Wert festgelegt hat.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist eine WS_BYTES-Struktur .

Der zurückgegebene Wert ist gut, bis die Nachricht freigegeben oder zurückgesetzt wird.


Ein benutzerdefinierter Kanal kann WsSetMessageProperty zum Festlegen verwenden.
das Zertifikat des Absenders aus einer empfangenen Nachricht, wenn es unterstützt
einen zertifikatbasierten Sicherheitsmodus. Die Funktion macht eine Kopie des angegebenen Werts.


Diese Eigenschaft ist in allen Nachrichtenzuständen verfügbar, außer
WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN
Wert: 16
Diese Eigenschaft wird mit WsGetMessageProperty verwendet, um windows abzurufen.
Token, das den Absender einer empfangenen Nachricht darstellt. Diese Eigenschaft ist
in folgenden Fällen verfügbar:


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist ein HANDLE.


Der zurückgegebene Wert ist gut, bis die Nachricht freigegeben oder zurückgesetzt wird.


Ein benutzerdefinierter Kanal kann WsSetMessageProperty zum Festlegen verwenden.
das Zertifikat des Absenders aus einer empfangenen Nachricht, wenn es unterstützt
einen zertifikatbasierten Sicherheitsmodus. Die Funktion dupliziert das angegebene Handle.


Diese Eigenschaft ist in allen Nachrichtenzuständen verfügbar, außer
WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN
Wert: 17
Diese Eigenschaft wird mit WsGetMessageProperty verwendet, um windows abzurufen.
Token, das den Absender einer empfangenen Nachricht darstellt, wenn
WS_HTTP_HEADER_AUTH_SECURITY_BINDING verwendet wird,
oder, wenn ein benutzerdefinierter Kanal den Wert festgelegt hat.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist ein HANDLE.

Der zurückgegebene Wert ist gut, bis die Nachricht freigegeben oder zurückgesetzt wird.


Ein benutzerdefinierter Kanal kann WsSetMessageProperty zum Festlegen verwenden.
das Windows-Token, das den Absender einer empfangenen Nachricht darstellt.
Die Funktion dupliziert das angegebene Handle.


Diese Eigenschaft ist in allen Nachrichtenzuständen verfügbar, außer
WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN
Wert: 18
Diese Eigenschaft wird mit WsGetMessageProperty verwendet, um windows abzurufen.
Token, das den Absender einer empfangenen Nachricht darstellt, wenn eine Nachrichtensicherheit
Bindung, z. B. WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING verwendet wird,
oder, wenn ein benutzerdefinierter Kanal den Wert festgelegt hat.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist ein HANDLE.

Der zurückgegebene Wert ist gut, bis die Nachricht freigegeben oder zurückgesetzt wird.


Ein benutzerdefinierter Kanal kann WsSetMessageProperty zum Festlegen verwenden.
das Token, das den Absender einer empfangenen Nachricht darstellt.
Die Funktion dupliziert das angegebene Handle.


Diese Eigenschaft ist in allen Nachrichtenzuständen verfügbar, außer
WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_SAML_ASSERTION
Wert: 19
Diese Eigenschaft wird mit WsGetMessageProperty verwendet, um die SAML-Assertion abzurufen.
den Absender einer empfangenen Nachricht darstellen, wenn
WS_SAML_MESSAGE_SECURITY_BINDING serverseitig verwendet wird,
oder, wenn ein benutzerdefinierter Kanal den Wert festgelegt hat.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist ein WS_XML_BUFFER.

Der zurückgegebene Wert ist gut, bis die Nachricht freigegeben oder zurückgesetzt wird.


Ein benutzerdefinierter Kanal kann WsSetMessageProperty zum Festlegen verwenden.
die SAML-Assertion, die den Absender einer empfangenen Nachricht darstellt.
Die Funktion dupliziert den angegebenen Puffer.


Diese Eigenschaft ist in allen Nachrichtenzuständen verfügbar, außer
WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_SECURITY_CONTEXT
Wert: 20
Diese Eigenschaft wird mit WsGetMessageProperty verwendet, um das Sichere Konversationshandle abzurufen, wenn
WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING wird serverseitig verwendet.


Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist ein WS_SECURITY_CONTEXT.

Der zurückgegebene Wert ist gut, bis die Nachricht freigegeben oder zurückgesetzt wird.
WS_MESSAGE_PROPERTY_PROTECTION_LEVEL
Wert: 21
Diese Eigenschaft wird mit WsGetMessageProperty verwendet, um die Sicherheitsschutzebene der Nachricht abzurufen.

Das begleitende Wertelement der WS_MESSAGE_PROPERTY-Struktur ist ein WS_PROTECTION_LEVEL Wert.

Wenn der Kanal die Sicherheit nicht verwendet oder die Sicherheitsüberprüfung fehlgeschlagen ist, wird die Schutzstufe auf festgelegt.
WS_PROTECTION_LEVEL_NONE. Andernfalls wird sie auf die von der Anwendung angeforderte Ebene festgelegt.


Diese Eigenschaft kann verwendet werden, um die status der Sicherheitsüberprüfung zu bestimmen, wenn WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS
ist auf FALSE festgelegt.


Ein benutzerdefinierter Kanal kann WsSetMessageProperty zum Festlegen verwenden.
die Schutzebene einer empfangenen Nachricht.


Diese Eigenschaft ist in allen Nachrichtenzuständen verfügbar, außer
WS_MESSAGE_STATE_EMPTY.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [Desktop-Apps | UWP-Apps]
Kopfzeile webservices.h