Méthode IWSDDeviceHost::AddDynamicService (wsdhost.h)
Inscrit un objet de service pour les requêtes 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).
Syntaxe
HRESULT AddDynamicService(
[in] LPCWSTR pszServiceId,
[in, optional] LPCWSTR pszEndpointAddress,
[in, optional] const WSD_PORT_TYPE *pPortType,
[in, optional] const WSDXML_NAME *pPortName,
[in, optional] const WSDXML_ELEMENT *pAny,
[in, optional] IUnknown *pService
);
Paramètres
[in] pszServiceId
ID du service dynamique. L’ID de service doit être distinct de tous les ID de service dans les métadonnées de l’hôte de service et de tout autre service dynamique inscrit. PszServiceId doit être un URI.
[in, optional] pszEndpointAddress
URI facultatif à utiliser comme adresse de point de terminaison pour ce service. Si aucun n’est spécifié, l’hôte de l’appareil suppose que le service doit être disponible sur toutes les adresses de transport locales.
[in, optional] pPortType
Référence à une structure WSD_PORT_TYPE qui spécifie le type de port. Peut être NULL. Spécifiez un seul pPortType et pPortName.
[in, optional] pPortName
Référence à une structure WSDXML_NAME qui spécifie le type du service, en associant le service à un port spécifié. Spécifiez un seul pPortType et pPortName.
[in, optional] pAny
Référence facultative à une section extensible à inclure dans les métadonnées de service dynamiques.
[in, optional] pService
Référence facultative à un objet de service hôte à inscrire.
Valeur retournée
Les valeurs de retour possibles incluent, sans s’y limiter, les éléments suivants :
Code de retour | Description |
---|---|
|
Méthode terminée avec succès. |
|
pszServiceId a la valeur NULL. |
|
La longueur en caractères de pszServiceId ou pszEndpointAddress dépasse WSD_MAX_TEXT_LENGTH (8192), ou pPortType et pPortName sont spécifiés. |
|
La méthode a échoué. Elle a peut-être échoué, car l’hôte n’a pas été initialisé ou le service spécifié par pszServiceId est introuvable. Appelez Init pour initialiser un hôte d’appareil. |
|
Mémoire insuffisante pour terminer l’opération. |
Remarques
Lorsque cette méthode est appelée, l’appareil ajoute une référence à l’objet de service et appelle ses méthodes en réponse aux messages de demande adressés au service. Appelez la méthode RemoveDynamicService sur l’hôte de l’appareil pour libérer sa référence au service et arrêter d’appeler les méthodes sur le service.
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) |
DLL | Wsdapi.dll |