PFN_WSK_DISCONNECT_EVENT fungsi panggilan balik (wsk.h)

Fungsi panggilan balik peristiwa WskDisconnectEvent memberi tahu aplikasi WSK bahwa koneksi pada soket berorientasi koneksi telah terputus oleh aplikasi jarak jauh.

Sintaks

PFN_WSK_DISCONNECT_EVENT PfnWskDisconnectEvent;

NTSTATUS PfnWskDisconnectEvent(
  [in, optional] PVOID SocketContext,
  [in]           ULONG Flags
)
{...}

Parameter

[in, optional] SocketContext

Penunjuk ke konteks soket untuk soket berorientasi koneksi yang telah terputus. Aplikasi WSK menyediakan pointer ini ke subsistem WSK dengan salah satu cara berikut:

  • Ini disebut fungsi WskSocket untuk membuat soket.
  • Ini disebut fungsi WskSocketConnect untuk membuat soket.
  • Ini memanggil fungsi WskAccept untuk menerima soket sebagai koneksi masuk.
  • Fungsi panggilan balik peristiwa WskAcceptEvent dipanggil untuk menerima soket sebagai koneksi masuk.

[in] Flags

Nilai ULONG yang berisi bitwise OR dari kombinasi bendera berikut:

WSK_FLAG_ABORTIVE

Aplikasi jarak jauh melakukan pemutusan sambungan soket secara abortif. Jika bendera ini tidak diatur, aplikasi jarak jauh melakukan pemutusan soket dengan baik.

WSK_FLAG_AT_DISPATCH_LEVEL

Subsistem WSK yang disebut fungsi panggilan balik peristiwa WskDisconnectEvent di IRQL = DISPATCH_LEVEL. Jika bendera ini tidak diatur, subsistem WSK mungkin telah memanggil fungsi panggilan balik peristiwa WskDisconnectEvent di IRQL <= DISPATCH_LEVEL.

Mengembalikan nilai

Fungsi panggilan balik peristiwa WskDisconnectEvent aplikasi WSK harus selalu mengembalikan STATUS_SUCCESS.

Keterangan

Subsistem WSK memanggil fungsi panggilan balik peristiwa WSK aplikasi WSKDisconnectEvent ketika soket berorientasi koneksi terputus oleh aplikasi jarak jauh hanya jika fungsi panggilan balik peristiwa sebelumnya diaktifkan dengan opsi soket SO_WSK_EVENT_CALLBACK . Untuk informasi selengkapnya tentang mengaktifkan fungsi panggilan balik peristiwa soket, lihat Mengaktifkan dan Menonaktifkan Fungsi Panggilan Balik Peristiwa.

Jika aplikasi jarak jauh melakukan pemutusan soket dengan anggun, tidak ada data lebih lanjut yang akan diterima dari soket. Namun, aplikasi WSK masih dapat mengirim data ke soket sampai soket ditutup sepenuhnya oleh aplikasi jarak jauh atau aplikasi WSK memanggil fungsi WskDisconnect atau fungsi WskCloseSocket pada soket.

Jika aplikasi jarak jauh melakukan pemutusan soket secara abortif, tidak ada data lebih lanjut yang akan diterima dari soket dan tidak ada data lebih lanjut yang dapat dikirim ke soket.

Subsistem WSK memanggil fungsi panggilan balik peristiwa WskDisconnectEvent aplikasi WSK di IRQL <= DISPATCH_LEVEL.

Fungsi panggilan balik peristiwa WskDisconnectEvent aplikasi WSK tidak boleh menunggu penyelesaian permintaan WSK lainnya dalam konteks penyelesaian WSK atau fungsi panggilan balik peristiwa. Panggilan balik dapat memulai permintaan WSK lainnya (dengan asumsi bahwa panggilan balik tidak menghabiskan terlalu banyak waktu pada DISPATCH_LEVEL), tetapi tidak boleh menunggu penyelesaiannya bahkan ketika panggilan balik dipanggil di IRQL = PASSIVE_LEVEL.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia di Windows Vista dan versi yang lebih baru dari sistem operasi Windows.
Target Platform Windows
Header wsk.h (termasuk Wsk.h)
IRQL <= DISPATCH_LEVEL

Lihat juga

WSK_CLIENT_CONNECTION_DISPATCH

WskAccept

WskAcceptEvent

WskCloseSocket

WskConnect

WskControlSocket

WskDisconnect

WskSocket

WskSocketConnect