Compartilhar via


DnssdServiceInstance Classe

Definição

Encapsula uma instância de um serviço que usa DNS-SD (Descoberta de Serviço DNS).

Observação

As APIs DNS-SD (Descoberta do Serviço DNS) win32 são declaradas no cabeçalho windns.h. Por exemplo, as APIs win32 para anunciar e descobrir serviços são DnsServiceRegister e 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
Herança
Object Platform::Object IInspectable DnssdServiceInstance
Atributos
Implementações

Requisitos do Windows

Família de dispositivos
Windows 10 (introduzida na 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduzida na v1.0)

Comentários

Use essa classe se você estiver fornecendo um serviço que se anuncia para outros usuários DNS-SD ou se estiver consumindo serviços anunciados por meio do DNS-SD.

Se o código tentar registrar uma instância de serviço com o mesmo nome de um serviço registrado anteriormente, seu serviço será renomeado para evitar um conflito adicionando um número entre parênteses no final do nome especificado. Por exemplo, se você especificasse "mygame" e esse nome já estivesse registrado para outro serviço, seu serviço seria renomeado para algo como "mygame (2)". Quando isso é feito, DnssdRegistrationResult.HasInstanceNameChanged é definido como true.

Construtores

DnssdServiceInstance(String, HostName, UInt16)

Cria um novo objeto DnssdServiceInstance com o nome da instância, o nome do host e a porta especificados.

Propriedades

DnssdServiceInstanceName

Obtém ou define o nome da instância de serviço DNS-SD para esse DnssdServiceInstance.

HostName

Obtém ou define o nome do host para esse DnssdServiceInstance.

Port

Obtém ou define o número da porta usado por esse DnssdServiceInstance.

Priority

Obtém ou define o valor de prioridade a ser atribuído a essa instância de serviço, conforme definido em RFC 2782 A DNS RR para especificar o local dos serviços (DNS SRV). Os clientes usam Prioridade para decidir a qual das várias instâncias de serviço equivalentes a serem anexadas.

TextAttributes

Obtém os atributos dessa instância de serviço, como uma lista de pares de cadeias de caracteres [nome, valor]. Os atributos podem ser inspecionados por clientes de serviço para determinar informações adicionais sobre uma instância de serviço.

Os nomes e valores de atributo específicos usados por um serviço são determinados pelo designer do serviço. Por exemplo, uma instância de serviço para um jogo multijogador pode ter atributos que descrevem qual mapa de jogo a instância está usando ou o nível de dificuldade do jogo da instância. Instâncias de serviço diferentes estariam ativas para diferentes mapas ou níveis de dificuldade, e um cliente que usa o serviço de jogo poderia usar os valores de atributo para determinar a qual instância do servidor de jogo se conectar para o nível de dificuldade ou mapa preferido do jogador.

Weight

Obtém ou define o valor de peso atribuído a essa instância de serviço, conforme definido em RFC 2782. Os clientes usam o valor Peso para escolher entre servidores com o mesmo valor de Prioridade .

Métodos

RegisterDatagramSocketAsync(DatagramSocket)

Registra de forma assíncrona um ouvinte de soquete UDP (datagram) para o serviço, em um determinado soquete.

RegisterDatagramSocketAsync(DatagramSocket, NetworkAdapter)

Registra de forma assíncrona um ouvinte de soquete UDP (datagram) para o serviço, em um determinado soquete e adaptador de rede.

RegisterStreamSocketListenerAsync(StreamSocketListener)

Registra de forma assíncrona um ouvinte de soquete de fluxo (TCP) para o serviço, no soquete fornecido.

RegisterStreamSocketListenerAsync(StreamSocketListener, NetworkAdapter)

Registra de forma assíncrona um ouvinte de soquete de fluxo (TCP) para o serviço, no soquete e no adaptador de rede fornecidos.

ToString()

Obtém o REGISTRO de Recurso do Servidor DNS (SRV RR) dessa instância de serviço, como uma cadeia de caracteres.

Consulte RFC 1034 DOMAIN NAMES – CONCEPTS AND FACILITIES para o formato e o conteúdo do DNS SRV RR e RFC 2782 e RFC 6763 DNS-Based Service Discovery para obter detalhes sobre como os clientes e servidores DNS-SD usam esses registros.

Aplica-se a

Confira também