Sequenza iniziale
Per avviare il provider di protocolli, il servizio Servizi Desktop remoto:
- Recupera il nome del listener e il CLSID dell'oggetto gestione protocolli (IWRdsProtocolManager) dal Registro di sistema. Per altre informazioni, vedere Registrazione di Protocol Manager.
- Chiama Inizializzare per inizializzare la gestione protocolli.
- Crea un oggetto gestione protocolli usando CLSID. Anche se sono presenti più listener registrati per lo stesso provider di protocolli, il servizio crea solo un oggetto di gestione protocolli.
- Chiama CreateListener per indicare all'oggetto gestione protocolli di creare un oggetto listener IWRdsProtocolListener e restituirlo al servizio. L'oggetto gestione protocolli deve aggiungere un riferimento all'oggetto listener prima di restituirlo al servizio. Il servizio rilascia l'oggetto quando il servizio si arresta o il listener viene eliminato.
- Chiama StartListen sull'oggetto listener in modo che il listener possa avviare l'ascolto delle connessioni in ingresso.
- Chiama StopListen per arrestare l'oggetto listener dall'ascolto.
- Chiama Uninitialize per annullare l'inizializzazione della gestione protocolli.
Il listener crea un oggetto IWRdsProtocolConnection quando un client tenta di connettersi. L'oggetto listener chiama OnConnected per notificare al servizio Servizi Desktop remoto che un nuovo client sta tentando di connettersi o riconnettersi e passa l'oggetto IWRdsProtocolConnection in tale chiamata. Il servizio Servizi Desktop remoto restituirà a sua volta un oggetto IWRdsProtocolConnectionCallback in tale chiamata in modo che il protocollo possa comunicare con il servizio Servizi Desktop remoto in base alle esigenze. Il servizio aggiunge un riferimento all'oggetto callback prima di restituire e il protocollo deve rilasciare tale riferimento quando la connessione si chiude.
Nella figura seguente viene illustrata l'interazione tra i vari oggetti durante l'avvio.
Argomenti correlati