Partager via


Interface IWSDDeviceHost (wsdhost.h)

Représente un appareil compatible DPWS. L’hôte de l’appareil annoncera sa présence sur le réseau à l’aide du protocole WS-Discovery. L’hôte de l’appareil répond également automatiquement aux requêtes de découverte et aux demandes de métadonnées.

L’appelant peut inscrire les services implémentés par l’utilisateur auprès de l’hôte de l’appareil. Ces services seront exposés dans les métadonnées de l’appareil et les services seront disponibles sur le réseau. Les messages liés à ces services sont automatiquement distribués dans l’objet de service.

Appelez WSDCreateDeviceHost ou WSDCreateDeviceHostAdvanced pour créer un objet qui expose cette interface.

Héritage

L’interface IWSDDeviceHost hérite de l’interface IUnknown. IWSDDeviceHost a également les types de membres suivants :

Méthodes

L’interface IWSDDeviceHost a ces méthodes.

 
IWSDDeviceHost ::AddDynamicService

Inscrit un objet de service pour les demandes entrantes, mais n’ajoute pas le service aux métadonnées de l’hôte de l’appareil. Il est utilisé pour les services temporaires (dynamiques).
IWSDDeviceHost ::init

Initialise une instance d’un objet IWSDDeviceHost.
IWSDDeviceHost ::RegisterPortType

Inscrit un type de port pour les messages entrants.
IWSDDeviceHost ::RegisterService

Inscrit un objet de service pour les requêtes entrantes et ajoute le service aux métadonnées de l’hôte de l’appareil.
IWSDDeviceHost ::RemoveDynamicService

Annule l’inscription d’un objet de service qui a été inscrit à l’aide d’AddDynamicService.
IWSDDeviceHost ::RetireService

Annule l’inscription d’un objet de service qui a été inscrit à l’aide de RegisterService et supprime le service des métadonnées de l’hôte de l’appareil.
IWSDDeviceHost ::SetMetadata

Définit les métadonnées d’un appareil, à l’exclusion des métadonnées de service définies par l’utilisateur.
IWSDDeviceHost ::SetServiceDiscoverable

Contrôle si le service est publié à l’aide de WS-Discovery.
IWSDDeviceHost ::SignalEvent

Avertit tous les clients abonnés qu’un événement s’est produit.
IWSDDeviceHost ::Start

Démarre l’hôte de l’appareil et publie l’hôte de l’appareil à l’aide d’un WS-Discovery message Hello.
IWSDDeviceHost ::Stop

Envoie un message WS-Discovery Bye et arrête l’hôte.
IWSDDeviceHost ::Terminate

Arrête l’hôte et libère tous les services attachés.

Remarques

Après avoir récupéré cette interface, l’application :

  1. Appelez la méthode RegisterPortType pour inscrire tous les types de port nécessaires.
  2. Appelez SetMetadata pour décrire l’appareil et, éventuellement, appelez RegisterService une ou plusieurs fois pour inscrire les services décrits dans les métadonnées de l’hôte de service.
  3. Appelez la méthode Start pour démarrer l’hôte de l’appareil et publier l’appareil à l’aide de WS-Discovery. Après avoir démarré l’hôte de l’appareil, vous pouvez éventuellement :
    1. Appelez AddDynamicService pour les services non décrits dans les métadonnées de l’hôte de service (par exemple, un travail d’impression ad hoc).
    2. Appelez RetireService pour arrêter l’action sur et déconnecter un service activé par la méthode RegisterService .
    3. Appelez la méthode SignalEvent pour indiquer que des notifications doivent être envoyées pour les abonnements relatifs à un événement particulier.
  4. Appelez la méthode Stop pour arrêter l’exécution de l’hôte et arrêter la publication de l’appareil.

Un objet IWSDDeviceHost peut fournir un objet pour un service à la demande (à l’aide d’un rappel de notification) lorsque l’appel de l’hôte reçoit un message de demande dirigé vers ce service.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête wsdhost.h (inclure Wsdapi.h)

Voir aussi

Vue d’ensemble des interfaces WSDAPI