enumerasi WS_MESSAGE_PROPERTY_ID (webservices.h)

Setiap properti pesan berjenis WS_MESSAGE_PROPERTY, diidentifikasi oleh ID, dan memiliki nilai terkait.

Sintaks

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;

Konstanta

 
WS_MESSAGE_PROPERTY_STATE
Nilai: 0
Properti ini digunakan dengan WsGetMessageProperty.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah WS_MESSAGE_STATE pesan saat ini.

Properti ini tersedia di semua status pesan.
WS_MESSAGE_PROPERTY_HEAP
Nilai: 1
Properti ini digunakan dengan WsGetMessageProperty.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah WS_HEAP pesan. Tumpuknya adalah
dimiliki oleh pesan. Pengguna pesan gratis untuk membuat tambahan
alokasi dalam timbunan ini. Alokasi dalam tumpukan dikosongkan
saat pesan direset/dikosongkan.


Pengguna tumpukan yang dikembalikan tidak boleh memanggil WsResetHeap pada heap. Ini akan mengakibatkan perilaku yang tidak ditentukan.


Objek pesan tidak akan menggunakan objek heap kecuali salah satu dari
API pesan dipanggil.


Properti ini tersedia di semua status pesan kecuali WS_MESSAGE_STATE_EMPTY.
Menggunakan timbunan pesan kosong akan mengakibatkan perilaku yang tidak ditentukan.
WS_MESSAGE_PROPERTY_ENVELOPE_VERSION
Nilai: 2
Properti ini digunakan dengan WsGetMessageProperty.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah WS_ENVELOPE_VERSION pesan.


Saat membuat pesan menggunakan WsCreateMessage,
versi amplop ditentukan sebagai parameter eksplisit (sebagai gantinya
sebagai properti).


Properti ini dapat ditentukan ketika properti pesan ditentukan menggunakan
struktur WS_MESSAGE_PROPERTIES .


Properti ini tersedia di semua status pesan kecuali WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_ADDRESSING_VERSION
Nilai: 3
Properti ini digunakan dengan WsGetMessageProperty.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah WS_ADDRESSING_VERSION pesan.


Saat membuat pesan menggunakan WsCreateMessage,
versi alamat ditentukan sebagai parameter eksplisit (sebagai gantinya
sebagai properti).


Properti ini dapat ditentukan ketika properti pesan ditentukan menggunakan
struktur WS_MESSAGE_PROPERTIES .


Properti ini tersedia di semua status pesan kecuali WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_HEADER_BUFFER
Nilai: 4
Properti ini digunakan dengan WsGetMessageProperty.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah WS_XML_BUFFER yang memegang header
pesan (serta amplop dan elemen isi).


Buffer ini valid hingga pesan direset/dikosongkan.


Properti ini tersedia di semua status pesan kecuali WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_HEADER_POSITION
Nilai: 5
Properti ini digunakan dengan WsGetMessageProperty.

Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah WS_XML_NODE_POSITION elemen header dalam buffer header (elemen yang berisi semua
header pesan sebagai turunan). Buffer header itu sendiri bisa
diperoleh menggunakan WS_MESSAGE_PROPERTY_HEADER_BUFFER.


Aplikasi dapat menggunakan WS_XML_NODE_POSITION yang dikembalikan sebagai awal
titik saat membaca atau menulis header secara manual (saat tidak menggunakan WsSetHeader,
WsGetHeader, WsGetCustomHeader atau WsAddCustomHeader).
Misalnya, posisi dapat diteruskan ke WsSetWriterPosition atau
WsSetReaderPosition untuk memposisikanPembaca XML atau Penulis XML dalam WS_XML_BUFFER yang berisi header. Selain itu,
WsMoveReader atau WsMoveWriter dapat digunakan untuk bergerak relatif
ke posisi yang telah ditetapkan.


Saat header pesan dibaca (melalui WsReadMessageStart atau
WsReadEnvelopeStart, elemen header secara otomatis ditambahkan ke
buffer header jika tidak ada dalam pesan yang sedang dibaca. Saat pesan diinisialisasi
(melalui WsInitializeMessage), elemen header ditambahkan secara otomatis
ke pesan.


Properti ini tersedia di semua status pesan kecuali WS_MESSAGE_STATE_EMPTY.


Posisi header valid hingga pesan diatur ulang atau dikosongkan.
WS_MESSAGE_PROPERTY_BODY_READER
Nilai: 6
Properti ini digunakan dengan WsGetMessageProperty.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah WS_XML_READER yang dapat digunakan untuk membaca
isi pesan.


Pembaca dimiliki oleh objek pesan, dan hanya valid
hingga WsFreeMessage atau WsResetMessage dipanggil.


Properti ini hanya tersedia ketika pesan
dalam status WS_MESSAGE_STATE_READING .
WS_MESSAGE_PROPERTY_BODY_WRITER
Nilai: 7
Properti ini digunakan dengan WsGetMessageProperty.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah WS_XML_WRITER yang dapat digunakan untuk menulis
isi pesan.


Properti ini hanya tersedia ketika pesan berada di
WS_MESSAGE_STATE_WRITING status.


Penulis dimiliki oleh objek pesan, dan hanya valid
hingga WsFreeMessage atau WsResetMessage dipanggil.
WS_MESSAGE_PROPERTY_IS_ADDRESSED
Nilai: 8
Properti ini digunakan dengan WsGetMessageProperty.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah BOOL yang menunjukkan apakah pesan memiliki
telah ditangani.


Saat pesan dibuat atau direset, properti ini adalah
atur ke FALSE.


Saat pesan dibaca (WsReadMessageStart atau
WsReadEnvelopeStart, maka properti ini adalah
atur ke TRUE.


Properti ini tersedia di semua status pesan kecuali WS_MESSAGE_STATE_EMPTY.


Lihat WsAddressMessage untuk informasi selengkapnya.
WS_MESSAGE_PROPERTY_HEAP_PROPERTIES
Nilai: 9
Properti ini digunakan dengan WsCreateMessage untuk menentukan properti
dari WS_HEAP yang terkait dengan pesan.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY berjenis WS_HEAP_PROPERTIES.


Timbunan digunakan untuk menyangga header pesan.


Properti timbunan berikut dapat ditentukan:


WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES
Nilai: 10
Properti ini digunakan dengan WsCreateMessage untuk menentukan properti
yang berlaku untuk Pembaca XML yang digunakan dengan pesan.


Properti Pembaca XML ini digunakan oleh objek pesan saat membaca header.
Selain itu, saluran menggunakan properti ini untuk pembaca yang mereka buat untuk membaca
Pesan.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY berjenis WS_XML_READER_PROPERTIES.


Properti berikut dapat ditentukan:


WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES
Nilai: 11
Properti ini digunakan dengan WsCreateMessage untuk menentukan properti
dari Penulis XML yang digunakan dengan pesan.


Properti Penulis XML ini digunakan oleh objek pesan saat menulis header.
Selain itu, saluran menggunakan properti ini untuk penulis yang mereka buat untuk menulis
Pesan.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY berjenis WS_XML_WRITER_PROPERTIES.


Properti berikut dapat ditentukan:


WS_MESSAGE_PROPERTY_IS_FAULT
Nilai: 12
Properti ini digunakan dengan WsGetMessageProperty atau WsSetMessageProperty untuk menunjukkan apakah pesan berisi kesalahan.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah BOOL.

Saat pesan dibaca (WsReadMessageStart atau WsReadEnvelopeStart),
properti ini diatur sesuai dengan apakah elemen pertama dari isi adalah kesalahan
Elemen. Aplikasi dapat menguji properti ini sebagai cara untuk memutuskan apakah
untuk membaca isinya sebagai kesalahan. Untuk membaca isi sebagai kesalahan, gunakan WsReadBody
dengan WS_FAULT_TYPE untuk mendapatkan WS_FAULT.


Ketika pesan ditulis (WsWriteMessageStart atau WsWriteEnvelopeStart)
properti ini dapat digunakan untuk menunjukkan apakah aplikasi akan menulis kesalahan atau tidak
dalam tubuh. Beberapa saluran akan menggunakan informasi ini untuk menentukan cara
kirim pesan. Misalnya, HTTP akan mengirim kode status 500 untuk kesalahan alih-alih 200.


Saat pesan diinisialisasi menggunakan WsInitializeMessage dengan
WS_FAULT_MESSAGE, properti diatur ke TRUE.
Untuk nilai WS_MESSAGE_INITIALIZATION lainnya, properti diatur ke FALSE.


Properti ini tersedia di semua status pesan kecuali WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS
Nilai: 13
Properti ini digunakan dengan WsCreateMessage untuk menentukan jumlah maksimum header
yang akan diizinkan saat memproses header pesan.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah ULONG.

Tujuan dari batas ini adalah untuk menempatkan batas atas pada jumlah iterasi
menghabiskan pemindaian untuk header.


Karena aplikasi dapat langsung memodifikasi konten buffer header,
batas ini tidak diberlakukan dalam semua kasus. Ini hanya diberlakukan ketika salah satu dari
API akses header digunakan (WsSetHeader, WsGetHeader,
WsGetCustomHeader, atau WsGetMappedHeader).


Nilai defaultnya adalah 64.
WS_MESSAGE_PROPERTY_USERNAME
Nilai: 14
Properti ini digunakan dengan WsGetMessageProperty untuk mengambil pengirim
nama pengguna dari pesan yang diterima, jika keamanan berbasis nama pengguna/kata sandi
aktif, atau jika saluran kustom telah menetapkan nilainya.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah struktur WS_STRING .

Nilai yang dikembalikan baik sampai pesan dibebaskan atau direset.


Saluran kustom dapat menggunakan WsSetMessageProperty untuk mengatur
nama pengguna pengirim dari pesan jika mendukung nama pengguna/kata sandi
keamanan berbasis. Fungsi ini akan membuat salinan nilai yang ditentukan.


Properti ini tersedia di semua status pesan kecuali
WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_ENCODED_CERT
Nilai: 15
Properti ini digunakan dengan WsGetMessageProperty untuk mengambil pengirim
sertifikat dari pesan yang diterima sebagai byte yang dikodekan, jika
mode keamanan berbasis sertifikat (seperti SSL) aktif,
atau jika saluran kustom telah menetapkan nilainya.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah struktur WS_BYTES .

Nilai yang dikembalikan baik sampai pesan dibebaskan atau direset.


Saluran kustom dapat menggunakan WsSetMessageProperty untuk mengatur
sertifikat pengirim dari pesan yang diterima jika mendukung
mode keamanan berbasis sertifikat. Fungsi ini akan membuat salinan nilai yang ditentukan.


Properti ini tersedia di semua status pesan kecuali
WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN
Nilai: 16
Properti ini digunakan dengan WsGetMessageProperty untuk mengambil Windows
token yang mewakili pengirim dari pesan yang diterima. Properti ini adalah
tersedia dalam kasus berikut:


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah HANDLE.


Nilai yang dikembalikan baik sampai pesan dikosongkan atau direset.


Saluran kustom dapat menggunakan WsSetMessageProperty untuk mengatur
sertifikat pengirim dari pesan yang diterima jika mendukung
mode keamanan berbasis sertifikat. Fungsi ini akan menduplikasi handel yang ditentukan.


Properti ini tersedia di semua status pesan kecuali
WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN
Nilai: 17
Properti ini digunakan dengan WsGetMessageProperty untuk mengambil Windows
token yang mewakili pengirim dari pesan yang diterima, jika
WS_HTTP_HEADER_AUTH_SECURITY_BINDING digunakan,
atau jika saluran kustom telah menetapkan nilainya.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah HANDLE.

Nilai yang dikembalikan baik sampai pesan dikosongkan atau direset.


Saluran kustom dapat menggunakan WsSetMessageProperty untuk mengatur
token windows yang mewakili pengirim dari pesan yang diterima.
Fungsi ini akan menduplikasi handel yang ditentukan.


Properti ini tersedia di semua status pesan kecuali
WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN
Nilai: 18
Properti ini digunakan dengan WsGetMessageProperty untuk mengambil Windows
token yang mewakili pengirim dari pesan yang diterima, jika keamanan pesan
pengikatan seperti WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING digunakan,
atau jika saluran kustom telah menetapkan nilainya.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah HANDLE.

Nilai yang dikembalikan baik sampai pesan dikosongkan atau direset.


Saluran kustom dapat menggunakan WsSetMessageProperty untuk mengatur
token yang mewakili pengirim dari pesan yang diterima.
Fungsi ini akan menduplikasi handel yang ditentukan.


Properti ini tersedia di semua status pesan kecuali
WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_SAML_ASSERTION
Nilai: 19
Properti ini digunakan dengan WsGetMessageProperty untuk mengambil pernyataan SAML
mewakili pengirim dari pesan yang diterima, jika
WS_SAML_MESSAGE_SECURITY_BINDING digunakan di sisi server,
atau jika saluran kustom telah menetapkan nilainya.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah WS_XML_BUFFER.

Nilai yang dikembalikan baik sampai pesan dikosongkan atau direset.


Saluran kustom dapat menggunakan WsSetMessageProperty untuk mengatur
pernyataan SAML yang mewakili pengirim dari pesan yang diterima.
Fungsi ini akan menduplikasi buffer yang ditentukan.


Properti ini tersedia di semua status pesan kecuali
WS_MESSAGE_STATE_EMPTY.
WS_MESSAGE_PROPERTY_SECURITY_CONTEXT
Nilai: 20
Properti ini digunakan dengan WsGetMessageProperty untuk mengambil handel percakapan aman jika
WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING digunakan di sisi server.


Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah WS_SECURITY_CONTEXT.

Nilai yang dikembalikan baik sampai pesan dikosongkan atau direset.
WS_MESSAGE_PROPERTY_PROTECTION_LEVEL
Nilai: 21
Properti ini digunakan dengan WsGetMessageProperty untuk mengambil tingkat perlindungan keamanan pesan.

Anggota nilai yang menyertai struktur WS_MESSAGE_PROPERTY adalah nilai WS_PROTECTION_LEVEL .

Jika saluran tidak menggunakan keamanan, atau jika verifikasi keamanan gagal, tingkat perlindungan diatur ke
WS_PROTECTION_LEVEL_NONE. Jika tidak, itu diatur ke tingkat yang diminta oleh aplikasi.


Properti ini dapat digunakan untuk menentukan status verifikasi keamanan saat WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS
diatur ke FALSE.


Saluran kustom dapat menggunakan WsSetMessageProperty untuk mengatur
tingkat perlindungan pesan yang diterima.


Properti ini tersedia di semua status pesan kecuali
WS_MESSAGE_STATE_EMPTY.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 7 [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 R2 [aplikasi desktop | Aplikasi UWP]
Header webservices.h