Partager via


DnssdServiceInstance Classe

Définition

Encapsule une instance d’un service qui utilise dns service discovery (DNS-SD).

Notes

Les API Dns Service Discovery (DNS-SD) Win32 sont déclarées dans l’en-tête windns.h. Par exemple, les API Win32 pour l’annonce et la découverte de services sont DnsServiceRegister et DnsServiceBrowse.

public ref class DnssdServiceInstance sealed : IStringable
/// [Windows.Foundation.Metadata.Activatable(Windows.Networking.ServiceDiscovery.Dnssd.IDnssdServiceInstanceFactory, 65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class DnssdServiceInstance final : IStringable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(Windows.Networking.ServiceDiscovery.Dnssd.IDnssdServiceInstanceFactory, 65536, "Windows.Foundation.UniversalApiContract")]
class DnssdServiceInstance final : IStringable
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Networking.ServiceDiscovery.Dnssd.IDnssdServiceInstanceFactory), 65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class DnssdServiceInstance : IStringable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Networking.ServiceDiscovery.Dnssd.IDnssdServiceInstanceFactory), 65536, "Windows.Foundation.UniversalApiContract")]
public sealed class DnssdServiceInstance : IStringable
function DnssdServiceInstance(dnssdServiceInstanceName, hostName, port)
Public NotInheritable Class DnssdServiceInstance
Implements IStringable
Héritage
Object Platform::Object IInspectable DnssdServiceInstance
Attributs
Implémente

Configuration requise pour Windows

Famille d’appareils
Windows 10 (introduit dans 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v1.0)

Remarques

Utilisez cette classe si vous fournissez un service qui s’annonce lui-même auprès d’autres utilisateurs DNS-SD, ou si vous consommez des services publiés via DNS-SD.

Si votre code tente d’inscrire une instance de service portant le même nom qu’un service précédemment inscrit, votre service sera renommé pour éviter un conflit en ajoutant un nombre entre parenthèses à la fin du nom que vous avez spécifié. Par exemple, si vous avez spécifié « mygame » et que ce nom a déjà été inscrit pour un autre service, votre service est renommé en « mygame (2) ». Lorsque cette opération est effectuée, DnssdRegistrationResult.HasInstanceNameChanged a la valeur true.

Constructeurs

DnssdServiceInstance(String, HostName, UInt16)

Crée un objet DnssdServiceInstance avec le nom d’instance, le nom d’hôte et le port spécifiés.

Propriétés

DnssdServiceInstanceName

Obtient ou définit le nom de l’instance de service DNS-SD pour ce DnssdServiceInstance.

HostName

Obtient ou définit le nom d’hôte de l’hôte pour ce DnssdServiceInstance.

Port

Obtient ou définit le numéro de port utilisé par ce DnssdServiceInstance.

Priority

Obtient ou définit la valeur de priorité à affecter à cette instance de service, telle que définie dans RFC 2782 A DNS RR pour spécifier l’emplacement des services (SRV DNS). Les clients utilisent Priority pour décider à laquelle de plusieurs instances de service équivalentes s’attacher.

TextAttributes

Obtient les attributs de cette instance de service, sous la forme d’une liste de paires de chaînes [nom, valeur]. Les attributs peuvent être inspectés par les clients de service pour déterminer des informations supplémentaires sur une instance de service.

Les noms d’attributs et les valeurs spécifiques utilisés par un service sont déterminés par le concepteur du service. Par exemple, une instance de service pour un jeu multijoueur peut avoir des attributs décrivant la carte de jeu utilisée par l’instance ou le niveau de difficulté de jeu de l’instance. Différentes instances de service sont actives pour différents mappages ou niveaux de difficulté, et un client utilisant le service de jeu peut utiliser les valeurs d’attribut pour déterminer à quelle instance de serveur de jeu se connecter pour la carte ou le niveau de difficulté préféré du joueur.

Weight

Obtient ou définit la valeur de poids affectée à cette instance de service, comme défini dans RFC 2782. Les clients utilisent la valeur Weight pour choisir entre des serveurs ayant la même valeur de priorité .

Méthodes

RegisterDatagramSocketAsync(DatagramSocket)

Inscrit de façon asynchrone un écouteur de socket udp (datagramme) pour le service, sur un socket donné.

RegisterDatagramSocketAsync(DatagramSocket, NetworkAdapter)

Inscrit de façon asynchrone un écouteur de socket udp (datagramme) pour le service, sur un socket et une carte réseau donnés.

RegisterStreamSocketListenerAsync(StreamSocketListener)

Inscrit de manière asynchrone un écouteur de socket de flux (TCP) pour le service, sur le socket donné.

RegisterStreamSocketListenerAsync(StreamSocketListener, NetworkAdapter)

Inscrit de manière asynchrone un écouteur de socket de flux (TCP) pour le service, sur le socket et la carte réseau donnés.

ToString()

Obtient l’enregistrement de ressource du serveur DNS (SRV RR) de cette instance de service, sous forme de chaîne.

Pour plus d’informations sur la façon dont les clients et serveurs DNS-SD et les serveurs utilisent ces enregistrements, consultez RFC 1034 DOMAIN NAMES - CONCEPTS AND FACILITIES pour connaître le format et le contenu du RR SRV DNS, et RFC 2782 et RFC 6763 DNS-Based Service Discovery .

S’applique à

Voir aussi