Bagikan melalui


Antarmuka IWRdsProtocolConnection (wtsprotocol.h)

Mengekspos metode yang dipanggil oleh layanan Layanan Desktop Jauh untuk mengonfigurasi koneksi klien. Protokol Anda harus menerapkan antarmuka ini untuk menangani permintaan koneksi dari klien. Ketika pendengar protokol menerima permintaan koneksi dari klien, pendengar harus membuat objek IWRdsProtocolConnection dan meneruskannya ke layanan Layanan Desktop Jauh dengan memanggil metode IWRdsProtocolListenerCallback::OnConnected . Sebagai respons, layanan menambahkan referensi ke objek IWRdsProtocolConnectionCallback dan mengembalikan penunjuk ke objek tersebut. Ketika koneksi tidak lagi diperlukan, protokol harus melepaskan pointer.

Selama urutan koneksi, metode berikut dipanggil oleh layanan Layanan Desktop Jauh dalam urutan yang tercantum.

  1. GetLogonErrorRedirector
  2. AcceptConnection
  3. GetClientData
  4. GetClientMonitorData
  5. GetUserCredentials
  6. GetLicenseConnection
  7. AuthenticateClientToSession
  8. NotifySessionId
  9. GetInputHandles
  10. GetVideoHandle
  11. ConnectNotify
  12. NotifyCommandProcessCreated
  13. IsUserAllowedToLogon
  14. SessionArbitrationEnumeration
  15. LogonNotify
Jika layanan Layanan Desktop Jauh perlu terhubung kembali setelah memanggil SessionArbitrationEnumeration, layanan ini terhubung kembali dengan memanggil metode berikut dalam urutan yang tercantum:
  1. DisconnectNotify (Dipanggil pada sesi baru yang dibuat.)
  2. NotifySessionId (Dipanggil pada sesi yang ada.)
  3. GetInputHandles
  4. GetVideoHandle
  5. ConnectNotify
  6. LogonNotify
Untuk memutuskan sambungan, layanan Layanan Desktop Jauh memanggil metode berikut dalam urutan yang tercantum:
  1. PraSambungkan
  2. DisconnectNotify
  3. Tutup
Layanan Layanan Desktop Jauh dapat memanggil metode berikut kapan saja setelah koneksi dibuat:

Warisan

Antarmuka IWRdsProtocolConnection mewarisi dari antarmuka IUnknown . IWRdsProtocolConnection juga memiliki jenis anggota ini:

Metode

Antarmuka IWRdsProtocolConnection memiliki metode ini.

 
IWRdsProtocolConnection::AcceptConnection

Mengarahkan protokol untuk melanjutkan permintaan koneksi.
IWRdsProtocolConnection::AuthenticateClientToSession

Menentukan sesi yang koneksinya harus disambungkan kembali.
IWRdsProtocolConnection::Close

Menutup sambungan setelah sesi terputus.
IWRdsProtocolConnection::ConnectNotify

Memberi sinyal protokol bahwa sesi telah diinisialisasi.
IWRdsProtocolConnection::CreateVirtualChannel

Meminta agar protokol membuat saluran virtual.
IWRdsProtocolConnection::D isconnectNotify

Memberi tahu protokol bahwa sesi telah terputus.
IWRdsProtocolConnection::GetClientData

Meminta pengaturan klien dari protokol.
IWRdsProtocolConnection::GetClientMonitorData

Mengambil jumlah monitor dan nomor monitor utama pada klien.
IWRdsProtocolConnection::GetInputHandles

Mendapatkan handel ke perangkat input/output untuk protokol.
IWRdsProtocolConnection::GetLastInputTime

Mengambil terakhir kali protokol menerima input pengguna.
IWRdsProtocolConnection::GetLicenseConnection

Mengambil objek IWRdsProtocolLicenseConnection yang digunakan untuk memulai proses lisensi klien.
IWRdsProtocolConnection::GetLogonErrorRedirector

Mengambil antarmuka IWRdsProtocolLogonErrorRedirector yang menentukan bagaimana protokol harus menangani kesalahan masuk klien.
IWRdsProtocolConnection::GetProtocolStatus

Mengambil informasi tentang status protokol.
IWRdsProtocolConnection::GetShadowConnection

Mengambil referensi ke objek koneksi bayangan dari protokol.
IWRdsProtocolConnection::GetUserCredentials

Mengembalikan kredensial pengguna.
IWRdsProtocolConnection::GetVideoHandle

Mendapatkan handel perangkat video untuk protokol.
IWRdsProtocolConnection::IsUserAllowedToLogon

Menentukan dari protokol apakah pengguna diizinkan untuk masuk ke sesi.
IWRdsProtocolConnection::LogonNotify

Dipanggil ketika pengguna telah masuk ke sesi.
IWRdsProtocolConnection::NotifyCommandProcessCreated

Memberi tahu protokol bahwa proses Winlogon.exe telah dibuat dan diinisialisasi.
IWRdsProtocolConnection::NotifySessionId

Mengirim pengidentifikasi sesi baru ke protokol.
IWRdsProtocolConnection::P reDisconnect

Memberi tahu protokol bahwa sesi akan terputus.
IWRdsProtocolConnection::QueryProperty

Mengambil nilai properti dari protokol.
IWRdsProtocolConnection::SessionArbitrationEnumeration

Dipanggil setelah arbitrase untuk memungkinkan protokol menentukan sesi yang akan disambungkan kembali.
IWRdsProtocolConnection::SetErrorInfo

Mengatur informasi kesalahan dalam protokol.

Keterangan

Untuk menghindari kemungkinan kebuntuan saat memanggil salah satu metode pada antarmuka ini, Anda tidak boleh melakukan panggilan fungsi atau metode apa pun yang akan secara langsung atau tidak langsung mengakibatkan API Layanan Desktop Jarak Jauh dipanggil. Jika Anda perlu melakukan panggilan keluar, Anda harus memulai utas baru dan melakukan panggilan keluar dari utas baru.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tidak ada yang didukung
Server minimum yang didukung Windows Server 2012
Target Platform Windows
Header wtsprotocol.h