DnssdServiceInstance 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
DNS-SD(DNS 서비스 검색)를 사용하는 서비스의 인스턴스를 캡슐화합니다.
참고
Win32 DNS-SD(DNS 서비스 검색) API는 windns.h 헤더에 선언됩니다. 예를 들어 서비스를 발표하고 검색하기 위한 Win32 API는 DnsServiceRegister 및 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
- 상속
- 특성
- 구현
Windows 요구 사항
디바이스 패밀리 |
Windows 10 (10.0.10240.0에서 도입되었습니다.)
|
API contract |
Windows.Foundation.UniversalApiContract (v1.0에서 도입되었습니다.)
|
설명
다른 DNS-SD 사용자에게 자신을 보급하는 서비스를 제공하거나 DNS-SD를 통해 보급된 서비스를 사용하는 경우 이 클래스를 사용합니다.
코드가 이전에 등록된 서비스와 동일한 이름으로 서비스 인스턴스를 등록하려고 하면 지정한 이름의 끝에 숫자를 괄호로 추가하여 충돌을 방지하기 위해 서비스의 이름이 바뀝니다. 예를 들어 "mygame"을 지정하고 해당 이름이 이미 다른 서비스에 등록된 경우 서비스의 이름이 "mygame(2)"과 같이 바뀝니다. 이 작업이 완료되면 DnssdRegistrationResult.HasInstanceNameChanged 가 true로 설정됩니다.
생성자
DnssdServiceInstance(String, HostName, UInt16) |
지정된 인스턴스 이름, 호스트 이름 및 포트를 사용하여 새 DnssdServiceInstance 개체를 만듭니다. |
속성
DnssdServiceInstanceName |
이 DnssdServiceInstance의 DNS-SD 서비스 인스턴스 이름을 가져오거나 설정합니다. |
HostName |
이 DnssdServiceInstance에 대한 호스트의 호스트 이름을 가져오거나 설정합니다. |
Port |
이 DnssdServiceInstance에서 사용하는 포트 번호를 가져오거나 설정합니다. |
Priority |
서비스 위치(DNS SRV)를 지정하기 위한 RFC 2782 A DNS RR에 정의된 대로 이 서비스 인스턴스에 할당할 우선 순위 값을 가져오거나 설정합니다. 클라이언트는 Priority 를 사용하여 연결할 몇 가지 동등한 서비스 인스턴스를 결정합니다. |
TextAttributes |
문자열의 [name, value] 쌍 목록으로 이 서비스 인스턴스의 특성을 가져옵니다. 서비스 클라이언트에서 특성을 검사하여 서비스 인스턴스에 대한 추가 정보를 확인할 수 있습니다. 서비스에서 사용하는 특정 특성 이름과 값은 서비스 디자이너에 의해 결정됩니다. 예를 들어 멀티 플레이어 게임의 서비스 인스턴스에는 인스턴스가 사용 중인 게임 맵 또는 인스턴스의 게임 난이도 수준을 설명하는 특성이 있을 수 있습니다. 다른 서비스 인스턴스는 다른 맵 또는 난이도 수준에서 활성화되며, 게임 서비스를 사용하는 클라이언트는 특성 값을 사용하여 플레이어가 선호하는 맵 또는 난이도 수준에 연결할 게임 서버 인스턴스를 결정할 수 있습니다. |
Weight |
RFC 2782에 정의된 대로 이 서비스 인스턴스에 할당된 가중치 값을 가져오거나 설정합니다. 클라이언트는 가중치 값을 사용하여 동일한 우선 순위 값을 가진 서버 중에서 선택합니다. |
메서드
RegisterDatagramSocketAsync(DatagramSocket) |
서비스에 대한 UDP(데이터그램) 소켓 수신기를 지정된 소켓에 비동기적으로 등록합니다. |
RegisterDatagramSocketAsync(DatagramSocket, NetworkAdapter) |
서비스에 대한 UDP(데이터그램) 소켓 수신기를 지정된 소켓 및 네트워크 어댑터에 비동기적으로 등록합니다. |
RegisterStreamSocketListenerAsync(StreamSocketListener) |
서비스에 대한 TCP(스트림) 소켓 수신기를 지정된 소켓에 비동기적으로 등록합니다. |
RegisterStreamSocketListenerAsync(StreamSocketListener, NetworkAdapter) |
지정된 소켓 및 네트워크 어댑터에서 서비스에 대한 스트림(TCP) 소켓 수신기를 비동기적으로 등록합니다. |
ToString() |
이 서비스 인스턴스의 DNS 서버 리소스 레코드(SRV RR)를 문자열로 가져옵니다. DNS-SD 클라이언트 및 서버에서 이러한 레코드를 사용하는 방법에 대한 자세한 내용은 RFC 1034 도메인 이름 - DNS SRV RR의 형식 및 내용에 대한 개념 및 기능 및 RFC 2782 및 RFC 6763 DNS-Based Service Discovery 를 참조하세요. |