Fungsi RxCeSendDatagram (rxce.h)
RxCeSendDatagram mengirimkan unit data layanan transportasi (TSDU) di sepanjang koneksi yang ditentukan pada sirkuit virtual.
Sintaks
NTSTATUS RxCeSendDatagram(
IN PRXCE_ADDRESS hAddress,
[in] IN PRXCE_CONNECTION_INFORMATION pConnectionInformation,
IN ULONG SendOptions,
[in] IN PMDL pMdl,
[in] IN ULONG SendLength,
[in] IN PVOID pCompletionContext
);
Parameter
hAddress
Penunjuk ke transportasi di mana TSDU akan dikirim.
[in] pConnectionInformation
Penunjuk ke informasi koneksi yang berisi alamat jarak jauh.
SendOptions
Penunjuk ke informasi koneksi yang berisi alamat jarak jauh.
[in] pMdl
Penunjuk ke buffer yang akan dikirim.
[in] SendLength
Panjang data yang akan dikirim.
[in] pCompletionContext
Konteks diteruskan kembali ke pemanggil selama SendCompletion untuk operasi asinkron. Bukan berarti parameter ini diabaikan jika parameter Opsi meminta operasi pengiriman sinkron.
Nilai kembali
RxCeSendDatagram mengembalikan STATUS_SUCCESS pada keberhasilan atau salah satu kode kesalahan berikut pada kegagalan:
Menampilkan kode | Deskripsi |
---|---|
|
Alokasi memori kumpulan tidak bertumpuk yang diperlukan oleh rutinitas ini gagal. |
|
Panjang yang tidak valid diteruskan dalam parameter SendLength berdasarkan Opsi yang ditentukan. |
Keterangan
Opsi asinkron dan sinkron yang ditunjukkan dalam parameter Opsi yang digunakan dalam RxCeSendDatagram membedakan antara dua situasi. Dalam kasus asinkron, kontrol kembali ke pemanggil setelah permintaan berhasil dikirimkan ke transportasi yang mendasar. Hasil untuk setiap permintaan yang diberikan dikomunikasikan kembali menggunakan rutinitas panggilan balik SendCompletion . Parameter pCompletionContext di RxCeSendDatagram diteruskan kembali dalam rutinitas panggilan balik untuk membantu pemanggil dalam membedakan permintaan.
Dalam kasus sinkron, permintaan dikirimkan ke transportasi yang mendasar dan kontrol tidak kembali ke pemanggil sampai permintaan selesai. Perhatikan bahwa dalam kasus sinkron, parameter pCompletionContext diabaikan dan status yang dikembalikan sesuai dengan status penyelesaian operasi.
Manfaat opsi asinkron dan sinkron tergantung pada transportasi yang mendasar. Di lingkungan sirkuit virtual (TCP, misalnya), opsi sinkron menyiratkan bahwa kontrol tidak kembali sampai data mencapai server. Di sisi lain untuk transportasi berorientasi datagram (UDP, misalnya), ada sangat sedikit perbedaan antara kedua opsi tersebut.
Perhatikan bahwa Opsi sinkron diacuhkan untuk mengirim datagram karena transportasi yang mendasar tidak memblokir pengiriman datagram.
RXCE_CONNECTION_INFORMATION adalah typedef untuk struktur TDI_CONNECTION_INFORMATION .
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Desktop |
Header | rxce.h (termasuk Rxce.h, Tdi.h) |
IRQL | <= APC_LEVEL |