Fungsi RxCeBuildConnectionOverMultipleTransports (rxce.h)
RxCeBuildConnectionOverMultipleTransports membuat koneksi antara alamat koneksi RDBSS lokal dan alamat jarak jauh tertentu dan mendukung beberapa transportasi. Sekumpulan alamat lokal ditentukan dan rutinitas ini mencoba terhubung ke server target melalui semua transportasi yang terkait dengan alamat lokal. Satu koneksi dipilih sebagai pemenang tergantung pada opsi sambungkan.
Sintaks
NTSTATUS RxCeBuildConnectionOverMultipleTransports(
[in, out] IN OUT PRDBSS_DEVICE_OBJECT pMiniRedirectorDeviceObject,
IN RXCE_CONNECTION_CREATE_OPTIONS CreateOption,
[in] IN ULONG NumberOfAddresses,
[in] IN PRXCE_ADDRESS *pLocalAddressPointers,
[in] IN PUNICODE_STRING pServerName,
[in] IN PRXCE_CONNECTION_INFORMATION pConnectionInformation,
[in] IN PRXCE_CONNECTION_EVENT_HANDLER pHandler,
[in] IN PVOID pEventContext,
[in] IN PRXCE_CONNECTION_COMPLETION_ROUTINE pCompletionRoutine,
[in, out] IN OUT PRXCE_CONNECTION_COMPLETION_CONTEXT pCompletionContext
);
Parameter
[in, out] pMiniRedirectorDeviceObject
Penunjuk ke objek perangkat pengalih mini.
CreateOption
Buat opsi yang menentukan transportasi mana yang akan dipilih untuk membuat koneksi. Opsi ini bisa menjadi salah satu enumerasi berikut untuk RXCE_CONNECTION_CREATE_OPTIONS:
- RxCeSelectFirstSuccessfulTransport
- RxCeSelectBestSuccessfulTransport
- RxCeSelectAllSuccessfulTransports
Pilih transportasi pertama yang berhasil merespons.
Pilih transportasi terbaik yang berhasil merespons.
Pilih semua transportasi yang berhasil merespons.
[in] NumberOfAddresses
Jumlah alamat lokal (transportasi).
[in] pLocalAddressPointers
Penunjuk ke array handel alamat lokal.
[in] pServerName
Penunjuk ke nama server (untuk enumerasi koneksi).
[in] pConnectionInformation
Penunjuk ke informasi koneksi yang menentukan alamat jarak jauh.
[in] pHandler
Penunjuk ke penanganan aktivitas untuk memproses menerima indikasi.
[in] pEventContext
Penunjuk ke parameter konteks yang akan diteruskan kembali ke penanganan aktivitas dan digunakan untuk indikasi.
[in] pCompletionRoutine
Penunjuk ke rutinitas penyelesaian koneksi ketika rutinitas ini selesai jika STATUS_PENDING awalnya dikembalikan.
[in, out] pCompletionContext
Pada input, parameter ini berisi penunjuk ke struktur RXCE_CONNECTION_COMPLETION_CONTEXT yang tidak diinisialisasi. Pada output ketika panggilan ini berhasil, sirkuit virtual dikaitkan dengan koneksi dan sirkuit virtual dan koneksi diinisialisasi dengan benar.
Nilai kembali
RxCeBuildConnectionOverMultipleTransports 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. |
|
Tidak dimungkinkan untuk menginisialisasi koneksi dan sirkuit virtual dengan salah satu dari beberapa transportasi. Kesalahan ini dapat terjadi jika semua transportasi RDBSS atau alamat mesin koneksi RBDSS yang ditujukan ke dalam array pLocalAddressPointers tidak valid. |
|
Salah satu parameter yang diteruskan ke rutinitas ini tidak valid. |
|
Salah satu panggilan asinkron ke berbagai transportasi yang diteruskan sebagai parameter input ke rutinitas masih luar biasa dan belum selesai. |
Keterangan
RxCeBuildConnectionOverMultipleTransports akan memulai serangkaian panggilan asinkron ke semua transportasi berbeda yang diteruskan sebagai parameter untuk mencoba dan membangun koneksi. Pengalih mini jaringan tidak dapat dibongkar sampai semua permintaan asinkron ini selesai.
RxCeBuildConnectionOverMultipleTransports harus dipanggil dalam konteks utas pekerja sistem.
Ketika RxCeBuildConnectionOverMultipleTransports berhasil, sirkuit virtual akan diinisialisasi dengan benar dan koneksi akan dibuat.
RXCE_CONNECTION_INFORMATION adalah typedef untuk struktur TDI_CONNECTION_INFORMATION .
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Desktop |
Header | rxce.h (sertakan Rxce.h) |
IRQL | <= APC_LEVEL |