Fonction WSDCreateDeviceHost (wsdhost.h)

Crée un hôte d’appareil et retourne un pointeur vers l’interface IWSDDeviceHost .

Syntaxe

HRESULT WSDCreateDeviceHost(
  [in]  LPCWSTR        pszLocalId,
  [in]  IWSDXMLContext *pContext,
  [out] IWSDDeviceHost **ppDeviceHost
);

Paramètres

[in] pszLocalId

Adresse logique ou physique de l’appareil. Une adresse logique est de la forme urn:uuid:{guid}. Si pszLocalId est une adresse logique, l’hôte annonce l’adresse logique, puis convertit l’adresse en adresse physique lorsqu’il reçoit des messages Resolve ou Probe.

Si pszLocalId est une adresse physique (telle que l’URL préfixée par http ou https), l’hôte utilise l’adresse comme adresse physique et hébergera sur cette adresse au lieu de l’adresse par défaut.

Pour une communication sécurisée, pszLocalId doit être une URL précédée par https, et l’hôte utilisera le protocole SSL/TLS sur le port spécifié dans l’URL. Le port recommandé est le port 5358, car ce port est réservé aux connexions sécurisées avec WSDAPI. Si aucun port n’est spécifié, l’hôte utilisera le port 443. Le port hôte doit être configuré avec un certificat de serveur SSL avant d’appeler WSDCreateDeviceHost. Pour plus d’informations sur la configuration des ports hôtes, consultez HttpSetServiceConfiguration.

Toute URL (http ou https) doit être terminée par une barre oblique de fin. L’URL doit contenir une adresse IP ou un nom d’hôte valide.

La liste suivante montre quelques exemples de valeurs pour pszLocalId. Il ne s’agit pas d’une liste complète de valeurs valides.

  • http://192.168.0.1:5357/
  • http://localhost/
  • http://myHostname:5357/
  • https://192.168.0.1:5358/
  • https://myHostname/
  • https://myHostname/myDevice/
  • https://myHostname:5358/

[in] pContext

Objet IWSDXMLContext qui définit des types de messages ou des espaces de noms personnalisés.

Si la valeur est NULL, un contexte par défaut représentant les espaces de noms et les types de messages intégrés est utilisé.

[out] ppDeviceHost

Pointeur vers un objet IWSDDeviceHost que vous utilisez pour exposer la sémantique d’appareil spécifique WSD associée à un serveur qui répond aux requêtes entrantes.

Valeur retournée

Les valeurs de retour possibles incluent, sans s’y limiter, les éléments suivants :

Code de retour Description
S_OK
Méthode terminée avec succès.
E_INVALIDARG
pszLocalId a la valeur NULL ou la longueur en caractères de pszLocalId dépasse WSD_MAX_TEXT_LENGTH (8192).
E_POINTER
ppDeviceHost a la valeur NULL.
E_OUTOFMEMORY
Mémoire insuffisante pour terminer l’opération.

Remarques

La fonction WSDCreateDeviceHost appelle la méthode IWSDDeviceHost::Init, qui initialise un instance d’un objet IWSDDeviceHost.

Spécifications

   
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)
Bibliothèque Wsdapi.lib
DLL Wsdapi.dll

Voir aussi

WSDCreateDeviceHostAdvanced