Bagikan melalui


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
WS_S_ASYNC
Operasi asinkron masih tertunda.
WS_E_OPERATION_ABORTED
Operasi dibatalkan.
WS_E_INVALID_OPERATION
Operasi tidak diperbolehkan karena status objek saat ini.
WS_E_ENDPOINT_DISCONNECTED
Koneksi dengan titik akhir jarak jauh dihentikan.
WS_E_INVALID_FORMAT
Data input tidak dalam format yang diharapkan atau tidak memiliki nilai yang diharapkan.
WS_E_OPERATION_TIMED_OUT
Operasi tidak selesai dalam waktu yang dialokasikan.
WS_E_QUOTA_EXCEEDED
Kuota terlampaui.
WS_E_SECURITY_VERIFICATION_FAILURE
Verifikasi keamanan tidak berhasil untuk data yang diterima.
WS_E_SECURITY_SYSTEM_FAILURE
Operasi keamanan gagal dalam kerangka kerja Windows Web Services.
E_OUTOFMEMORY
Kehabisan memori.
E_INVALIDARG
Satu atau beberapa argumen tidak valid.
Kesalahan Lain
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 objek kesalahan berisi header yang digunakan untuk menjelaskan kesalahan seperti yang ditentukan oleh WS_FAULT_ERROR_PROPERTY_HEADER, maka header ditambahkan ke header pesan kesalahan.

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