PFN_WSK_CONNECT_EX fungsi panggilan balik (wsk.h)
Fungsi WskConnectEx menyambungkan soket berorientasi koneksi atau aliran ke alamat transportasi jarak jauh.
WskConnectEx mirip dengan WskConnect kecuali bahwa WskConnect juga dapat secara opsional mengirim buffer data selama atau setelah sinkronisasi koneksi.
Sintaks
PFN_WSK_CONNECT_EX PfnWskConnectEx;
NTSTATUS PfnWskConnectEx(
[in] PWSK_SOCKET Socket,
[in] PSOCKADDR RemoteAddress,
[in, optional] PWSK_BUF Buffer,
ULONG Flags,
[in, out] PIRP Irp
)
{...}
Parameter
[in] Socket
Penunjuk ke struktur WSK_SOCKET yang menentukan objek soket untuk soket yang tersambung ke alamat transportasi jarak jauh.
[in] RemoteAddress
Penunjuk ke struktur yang menentukan alamat transportasi jarak jauh untuk menyambungkan soket. Penunjuk ini harus menjadi penunjuk ke jenis struktur SOCKADDR tertentu yang sesuai dengan keluarga alamat yang ditentukan aplikasi WSK saat membuat soket.
[in, optional] Buffer
Penunjuk ke struktur WSK_BUF , yang berisi data yang akan dikirim selama atau setelah sinkronisasi koneksi. Ukuran maksimum yang diizinkan dalam byte adalah 65.535.
Flags
Parameter ini dicadangkan untuk penggunaan sistem. Aplikasi WSK harus mengatur parameter ini ke nol.
[in, out] Irp
Penunjuk ke IRP yang dialokasikan pemanggil yang digunakan subsistem WSK untuk menyelesaikan operasi koneksi secara asinkron. Untuk informasi selengkapnya tentang menggunakan IRP dengan fungsi WSK, lihat Menggunakan RUNP dengan Fungsi Kernel Winsock.
Nilai kembali
WskConnectEx mengembalikan salah satu kode NTSTATUS berikut:
Menampilkan kode | Deskripsi |
---|---|
|
Soket berhasil tersambung ke alamat transportasi jarak jauh. IRP akan diselesaikan dengan status keberhasilan. |
|
Subsistem WSK tidak dapat segera menyambungkan soket. Subsistem WSK akan menyelesaikan IRP setelah menyambungkan soket ke alamat transportasi jarak jauh. Status operasi sambungkan akan dikembalikan di bidang IoStatus.Status dari IRP. |
|
Soket tidak lagi berfungsi. IRP akan diselesaikan dengan status kegagalan. Aplikasi WSK harus memanggil fungsi WskCloseSocket untuk menutup soket sesegera mungkin. |
|
Aplikasi WSK mencoba meneruskan bendera ke parameter Bendera (karena tidak ada bendera yang valid yang saat ini ditentukan untuk WskConnectEx, ini tidak diizinkan). |
|
Aplikasi WSK mencoba meneruskan buffer yang lebih besar dari 65.535 byte ke parameter Buffer . |
|
Terjadi kesalahan. IRP akan diselesaikan dengan status kegagalan. |
Keterangan
Aplikasi WSK dapat membuat, mengikat, dan menghubungkan soket berorientasi koneksi dalam satu panggilan fungsi dengan memanggil fungsi WskSocketConnect daripada memanggil fungsi WskSocket , fungsi WskBind , lalu fungsi WskConnectEx . Sebaiknya panggil fungsi WskSocketConnect kecuali aplikasi WSK perlu mengatur opsi soket atau mengeluarkan operasi kontrol I/O sebelum mengikat atau menyambungkan soket.
Aplikasi WSK dapat memanggil fungsi WskConnectEx hanya pada soket berorientasi koneksi atau streaming yang sebelumnya terikat aplikasi ke alamat transportasi lokal dengan memanggil fungsi WskBind .
Untuk soket streaming, setelah WskConnectEx berhasil dipanggil pada soket aliran, soket berkomitmen pada alur berorientasi koneksi dan mungkin tidak lagi memanggil fungsi soket mendengarkan.
Jika parameter Buffer digunakan, pemanggil dapat membebaskan MDL dalam struktur WSK_BUF segera setelah permintaan koneksi selesai.
Sebelum memanggil WskConnectEx dengan buffer pengiriman yang disediakan, jika aplikasi WSK mengatur opsi TCP_FASTOPEN pada soket WSK melalui fungsi WskControlSocket , sistem akan secara opsional mengirim beberapa atau semua data dalam paket SYN. Untuk informasi selengkapnya, lihat opsi TCP Fastopen di Opsi Soket IPPROTO_TCP.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 10, versi 1703 |
Target Platform | Universal |
Header | wsk.h (termasuk Wsk.h) |
IRQL | <= DISPATCH_LEVEL |
Lihat juga
WSK_PROVIDER_STREAM_DISPATCH WSK_PROVIDER_CONNECTION_DISPATCHSaran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk