Compartir a través de


Interfaz IWSDDeviceHost (wsdhost.h)

Representa un dispositivo compatible con DPWS. El host del dispositivo anunciará su presencia en la red mediante el protocolo WS-Discovery. El host del dispositivo también responderá automáticamente a las consultas de detección y las solicitudes de metadatos.

El autor de la llamada puede registrar los servicios implementados por el usuario con el host del dispositivo. Estos servicios se exponen en los metadatos del dispositivo y los servicios estarán disponibles a través de la red. Los mensajes enlazados a estos servicios se enviarán automáticamente al objeto de servicio.

Llame a WSDCreateDeviceHost o WSDCreateDeviceHostAdvanced para crear un objeto que exponga esta interfaz.

Herencia

La interfaz IWSDDeviceHost hereda de la interfaz IUnknown . IWSDDeviceHost también tiene estos tipos de miembros:

Métodos

La interfaz IWSDDeviceHost tiene estos métodos.

 
IWSDDeviceHost::AddDynamicService

Registra un objeto de servicio para las solicitudes entrantes, pero no agrega el servicio a los metadatos del host del dispositivo. Se usa para los servicios transitorios (dinámicos).
IWSDDeviceHost::Init

Inicializa una instancia de un objeto IWSDDeviceHost.
IWSDDeviceHost::RegisterPortType

Registra un tipo de puerto para los mensajes entrantes.
IWSDDeviceHost::RegisterService

Registra un objeto de servicio para las solicitudes entrantes y agrega el servicio a los metadatos del host del dispositivo.
IWSDDeviceHost::RemoveDynamicService

Anula el registro de un objeto de servicio registrado mediante AddDynamicService.
IWSDDeviceHost::RetireService

Anula el registro de un objeto de servicio que se registró mediante RegisterService y quita el servicio de los metadatos del host del dispositivo.
IWSDDeviceHost::SetMetadata

Establece los metadatos de un dispositivo, excepto los metadatos de servicio definidos por el usuario.
IWSDDeviceHost::SetServiceDiscoverable

Controla si el servicio se anuncia mediante WS-Discovery.
IWSDDeviceHost::SignalEvent

Notifica a todos los clientes suscritos que se ha producido un evento.
IWSDDeviceHost::Start

Inicia el host del dispositivo y publica el host de dispositivo mediante un mensaje de WS-Discovery Hello.
IWSDDeviceHost::Stop

Envía un mensaje de WS-Discovery Bye y detiene el host.
IWSDDeviceHost::Terminate

Finaliza el host y libera los servicios adjuntos.

Comentarios

Después de recuperar esta interfaz, la aplicación haría lo siguiente:

  1. Llame al método RegisterPortType para registrar todos los tipos de puerto necesarios.
  2. Llame a SetMetadata para describir el dispositivo y, opcionalmente, llame a RegisterService una o varias veces para registrar los servicios descritos en los metadatos del host de servicio.
  3. Llame al método Start para iniciar el host del dispositivo y publicar el dispositivo mediante WS-Discovery.Después de iniciar el host del dispositivo, puede:
    1. Llame a AddDynamicService para los servicios que no se describen en los metadatos del host de servicio (por ejemplo, un trabajo de impresión ad hoc).
    2. Llame a RetireService para finalizar la acción en y desconectar un servicio activado por el método RegisterService .
    3. Llame al método SignalEvent para indicar que se deben enviar notificaciones para suscripciones relacionadas con un evento determinado.
  4. Llame al método Stop para finalizar la ejecución del host y finalizar la publicación del dispositivo.

Un objeto IWSDDeviceHost puede proporcionar un objeto para un servicio a petición (mediante una devolución de llamada de notificación) al llamar al host recibe un mensaje de solicitud dirigido a ese servicio.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado wsdhost.h (incluya Wsdapi.h)

Consulte también

Información general sobre las interfaces WSDAPI