Fungsi panggilan balik LPWSPENUMNETWORKEVENTS (ws2spi.h)

Fungsi LPWSPEnumNetworkEvents melaporkan kemunculan peristiwa jaringan untuk soket yang ditunjukkan.

Sintaks

LPWSPENUMNETWORKEVENTS Lpwspenumnetworkevents;

int Lpwspenumnetworkevents(
  [in]  SOCKET s,
  [in]  WSAEVENT hEventObject,
  [out] LPWSANETWORKEVENTS lpNetworkEvents,
  [out] LPINT lpErrno
)
{...}

Parameter

[in] s

Deskriptor mengidentifikasi soket.

[in] hEventObject

Handel opsional mengidentifikasi objek peristiwa terkait yang akan direset.

[out] lpNetworkEvents

Penunjuk ke struktur WSANETWORKEVENTS yang diisi dengan catatan peristiwa jaringan yang terjadi dan kode kesalahan terkait. Struktur WSANETWORKEVENTS didefinisikan dalam teks berikut.

[out] lpErrno

Arahkan ke kode kesalahan.

Mengembalikan nilai

Nilai yang dikembalikan adalah nol jika operasi berhasil. Jika tidak, nilai SOCKET_ERROR dikembalikan, dan nomor kesalahan tertentu tersedia di lpErrno.

Kode Kesalahan Makna
WSAENETDOWN
Subsistem jaringan gagal.
WSAEINVAL
Menunjukkan bahwa salah satu parameter yang ditentukan tidak valid.
WSAEINPROGRESS
Panggilan Windows Sockets pemblokiran sedang berlangsung, atau penyedia layanan masih memproses fungsi panggilan balik.
WSAENOTSOCK
Deskriptor bukan soket.

Keterangan

Fungsi ini digunakan untuk melaporkan peristiwa jaringan mana yang telah terjadi untuk soket yang ditunjukkan sejak pemanggilan terakhir fungsi ini. Ini dimaksudkan untuk digunakan bersama dengan LPWSPEventSelect dan LPWSPAsyncSelect, yang mengaitkan objek peristiwa dengan satu atau beberapa peristiwa jaringan. Perekaman peristiwa jaringan dimulai ketika LPWSPEventSelect atau LPWSPAsyncSelect dipanggil dengan argumen lNetworkEvents nonzero, dan tetap berlaku sampai panggilan lain yang sesuai dilakukan ke LPWSPEventSelect atau LPWSPAsyncSelect dengan argumen lNetworkEvents diatur ke nol.

LPWSPEnumNetworkEvents hanya melaporkan aktivitas jaringan dan kesalahan yang dicalonkan melalui LPWSPEventSelect. Lihat deskripsi LPWSPSelect dan LPWSPAsyncSelect untuk mengetahui bagaimana fungsi tersebut melaporkan aktivitas dan kesalahan jaringan.

Catatan internal soket tentang peristiwa jaringan disalin ke struktur yang direferensikan oleh lpNetworkEvents, di mana rekaman peristiwa jaringan internal dihapus. Jika hEventObject bukan null, objek peristiwa yang ditunjukkan juga diatur ulang. Penyedia Windows Sockets menjamin bahwa operasi menyalin rekaman peristiwa jaringan, membersihkannya, dan mengatur ulang objek peristiwa terkait bersifat atomik, sehingga kejadian berikutnya dari peristiwa jaringan yang ditunjuk akan menyebabkan objek peristiwa diatur. Dalam kasus fungsi ini mengembalikan SOCKET_ERROR, objek peristiwa terkait tidak diatur ulang dan catatan peristiwa jaringan tidak dihapus.

Struktur WSANETWORKEVENTS didefinisikan pada halaman referensi WSANETWORKEVENTS .

Anggota lNetworkEvents dari struktur WSANETWORKEVENTS menunjukkan peristiwa jaringan FD_XXX mana yang telah terjadi. Array iErrorCode digunakan untuk berisi kode kesalahan terkait, dengan indeks array yang sesuai dengan posisi bit peristiwa di lNetworkEvents. Pengidentifikasi seperti FD_READ_BIT dan FD_WRITE_BIT dapat digunakan untuk mengindeks array iErrorCode .

Perhatikan bahwa hanya elemen array iErrorCode yang diatur yang sesuai dengan bit yang diatur dalam anggota lNetworkEvents . Anggota lain tidak dimodifikasi (ini penting untuk kompatibilitas mundur dengan klien Windows Socket 2 SPI yang tidak mengetahui peristiwa FD_ROUTING_INTERFACE_CHANGE dan FD_ADDRESS_LIST_CHANGE baru).

Kode kesalahan berikut dapat dikembalikan bersama dengan peristiwa jaringan masing-masing.

Peristiwa: FD_CONNECT

Kode Kesalahan Makna
WSAEAFNOSUPPORT
Alamat dalam keluarga yang ditentukan tidak dapat digunakan dengan soket ini.
WSAECONNREFUSED
Upaya untuk terhubung ditolak secara paksa.
WSAENETUNREACH
Jaringan tidak dapat dijangkau dari host ini saat ini.
WSAENOBUFS
Tidak ada ruang buffer yang tersedia. Soket tidak dapat dihubungkan.
WSAETIMEDOUT
Upaya untuk menyambungkan kehabisan waktu tanpa membuat koneksi.

Peristiwa: FD_CLOSE

Kode Kesalahan Makna
WSAENETDOWN
Subsistem jaringan gagal.
WSAECONNRESET
Koneksi direset oleh sisi jarak jauh.
WSAECONNABORTED
Koneksi dihentikan karena waktu habis atau kegagalan lainnya.

Peristiwa: FD_READ, FD_WRITE, FD_OOB, FD_ACCEPT, FD_QOS, FD_GROUP_QOS, FD_ADDRESS_LIST_CHANGE

Kode Kesalahan Makna
WSAENETDOWN
Subsistem jaringan gagal.

Peristiwa: FD_ROUTING_INTERFACE_CHANGE

Kode Kesalahan Makna
WSAENETUNREACH
Tujuan yang ditentukan tidak lagi dapat dijangkau.
WSAENETDOWN
Subsistem jaringan gagal.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Header ws2spi.h

Lihat juga

LPWSPEventSelect