Fungsi WsSendFaultMessageForError (webservices.h)
Mengirim pesan kesalahan yang diberikan objek WS_ERROR .
Sintaks
HRESULT WsSendFaultMessageForError(
[in] WS_CHANNEL *channel,
[in] WS_MESSAGE *replyMessage,
[in] WS_ERROR *faultError,
[in] HRESULT faultErrorCode,
[in] WS_FAULT_DISCLOSURE faultDisclosure,
[in] WS_MESSAGE *requestMessage,
[in, optional] const WS_ASYNC_CONTEXT *asyncContext,
[in, optional] WS_ERROR *error
);
Parameter
[in] channel
Saluran untuk mengirim pesan.
[in] replyMessage
Objek pesan yang digunakan untuk mengirim pesan balasan.
Objek pesan harus dalam WS_MESSAGE_STATE_EMPTY atau WS_MESSAGE_STATE_INITIALIZED. Jika pesan yang diinisialisasi disediakan, pesan seharusnya diinisialisasi menggunakan WS_FAULT_MESSAGE.
[in] faultError
Objek kesalahan yang digunakan untuk membangun kesalahan.
[in] faultErrorCode
Kode kesalahan yang terkait dengan kesalahan. Ini tidak bisa menjadi kode keberhasilan.
Kode kesalahan ini tidak pernah disertakan dalam pesan kesalahan secara langsung, tetapi sebaliknya digunakan sebagai mekanisme fallback untuk membuat string kesalahan jika objek WS_ERROR tidak berisi string kesalahan apa pun.
[in] faultDisclosure
Mengontrol berapa banyak informasi kesalahan yang disertakan dalam pesan kesalahan.
[in] requestMessage
Pesan permintaan. Ini digunakan untuk mendapatkan informasi korelasi yang digunakan dalam merumuskan pesan balasan.
Pesan dapat berada dalam status apa pun tetapi WS_MESSAGE_STATE_EMPTY.
[in, optional] asyncContext
Informasi tentang cara memanggil fungsi secara asinkron, atau NULL jika memanggil secara sinkron.
[in, optional] error
Menentukan tempat informasi kesalahan tambahan harus disimpan jika fungsi gagal.
Nilai kembali
Fungsi ini dapat mengembalikan salah satu nilai ini.
Menampilkan kode | Deskripsi |
---|---|
|
Operasi asinkron masih tertunda. |
|
Operasi dibatalkan. |
|
Operasi tidak diperbolehkan karena status objek saat ini. |
|
Koneksi dengan titik akhir jarak jauh dihentikan. |
|
Data input tidak dalam format yang diharapkan atau tidak memiliki nilai yang diharapkan. |
|
Operasi tidak selesai dalam waktu yang dialokasikan. |
|
Kuota terlampaui. |
|
Verifikasi keamanan tidak berhasil untuk data yang diterima. |
|
Operasi keamanan gagal dalam kerangka kerja Windows Web Services. |
|
Kehabisan memori. |
|
Satu atau beberapa argumen tidak valid. |
|
Fungsi ini dapat mengembalikan kesalahan lain yang tidak tercantum di atas. |
Keterangan
WS_FAULT yang dikirim dalam isi pesan dibuat menggunakan aturan yang sama seperti yang didefinisikan oleh WsCreateFaultFromError.
Nilai WS_ACTION_HEADER yang digunakan untuk pesan balasan dihitung sebagai berikut:
- Jika WS_CHANNEL_PROPERTY_ADDRESSING_VERSION saluran WS_ADDRESSING_VERSION_TRANSPORT, maka tidak ada tindakan yang disertakan dalam pesan karena versi pengalamatan tidak mengizinkan nilai tindakan untuk kesalahan.
- Jika objek kesalahan berisi string tindakan (panjang string yang dikembalikan oleh WS_FAULT_ERROR_PROPERTY_ACTION lebih besar dari nol), maka string tindakan digunakan.
- Jika objek kesalahan tidak berisi tindakan, maka nilai tindakan default disediakan.
Pesan kesalahan akan menyertakan informasi korelasi yang sesuai dengan WS_ADDRESSING_VERSION. Lihat Gambaran Umum Lapisan Saluran untuk informasi selengkapnya tentang menghubungkan pesan balasan permintaan.
Jika mengirim kesalahan tanpa objek WS_ERROR , gunakan WsSendReplyMessage.
Untuk menambahkan header kustom ke pesan, inisialisasi pesan WsInitializeMessage dengan WS_FAULT_MESSAGE lalu tambahkan header menggunakan WsAddCustomHeader sebelum memanggil fungsi ini.
Persyaratan
Klien minimum yang didukung | Windows 7 [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows Server 2008 R2 [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | webservices.h |
Pustaka | WebServices.lib |
DLL | WebServices.dll |