내보내기(0) 인쇄
모두 확장
정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

DatagramSocket.GetOutputStreamAsync(EndpointPair) | getOutputStreamAsync(EndpointPair) Method

EndpointPair 개체로 지정할 수 있는 원격 네트워크 대상으로 IOutputStream을 가져오는 작업을 시작합니다. 이 원격 네트워크 대상은 나중에 네트워크 데이터를 보내는 데 사용할 수 있습니다.

구문


datagramSocket.getOutputStreamAsync(endpointPair).done( /* 성공 및 오류 처리기 */ );

매개 변수

endpointPair

형식: EndpointPair

로컬 호스트 이름이나 로컬 IP 주소, 로컬 서비스 이름이나 로컬 UDP 포트, 원격 호스트 이름이나 원격 IP 주소, 원격 서비스 이름이나 원격 UDP 포트를 나타내는 끝점의 쌍입니다.

반환 값

형식: IAsyncOperation<IOutputStream>

비동기 작업을 나타내는 IOutputStream입니다.

설명

DatagramSocketGetOutputStreamAsync(EndpointPair) 메서드는 IOutputStreamEndpointPair 개체에 지정된 원격 네트워크 대상으로 가져오는 작업을 시작하는 데 사용됩니다. 그러고 나면 IOutputStream을 사용하여 데이터를 원격 대상으로 전송할 수 있습니다.

GetOutputStreamAsync(EndpointPair) 메서드는 성공적으로 완료되면 IOutputStream을 반환합니다. 해당 스트림에 쓰면 지정된 원격 호스트 및 서비스 이름으로 데이터그램이 보내집니다. IOutputStream은 항상 ConnectAsync 메서드에 지정된 원격 호스트 이름과 원격 서비스 이름으로 전송됩니다.

endpointPair 매개 변수에 전달된 EndpointPairRemoteHostName 속성에는 원격 대상의 호스트 이름이나 IP 주소가 포함될 수 있습니다. endpointPair 매개 변수에 전달된 EndpointPairRemoteServiceName 속성에는 원격 대상의 서비스 이름이나 UDP 포트가 포함될 수 있습니다. RemoteHostName 속성에 호스트 이름이 있을 경우 GetOutputStreamAsync(EndpointPair) 메서드는 원격 호스트의 이름을 확인합니다. RemoteServiceName 속성에 서비스 이름이 있을 경우 GetOutputStreamAsync 메서드는 UDP 포트로 원격 호스트 이름을 확인합니다.

endpointPair 매개 변수에 전달된 EndpointPair 개체에 RemoteHostNameRemoteServiceName 속성을 제공해야 합니다. RemoteHostNamenull이거나 RemoteServiceNamenull 또는 빈 문자열인 경우 오류가 발생 됩니다.

endpointPair 매개 변수에 전달된 EndpointPair 개체에 null인 LocalHostName 속성이 포함될 경우 시스템은 사용되는 로컬 IP 주소를 제공합니다. endpointPair 매개 변수에 전달된 EndpointPair 개체에 LocalServiceName 속성에 대한 빈 문자열이 포함될 경우 시스템은 사용되는 로컬 UDP 포트를 제공합니다.

GetOutputStreamAsync(EndpointPair) 메서드를 호출하기 이전에 BindServiceNameAsync(String, NetworkAdapter) 메서드를 사용하여 네트워크 어댑터를 지정한 경우 지정된 어댑터가 바인딩 작업에 사용됩니다. BindServiceNameAsync(String, NetworkAdapter)를 호출한 후 GetOutputStreamAsync(EndpointPair)에 전달된 endpointPair 매개 변수가 LocalHostName을 지정하는 경우 GetOutputStreamAsync(EndpointPair) 메서드가 실패합니다.

DatagramSocket을 사용하여 UDP 데이터그램을 원격 네트워크 대상에 보내는 방법은 두 가지가 있습니다.

GetOutputStreamAsync 메서드를 사용하면 앱이 DatagramSocket 개체를 사용하여 UDP 다이어그램을 여러 네트워크 대상에 보낼 수 있습니다. GetOutputStreamAsync 메서드가 호출될 때마다 앱은 remoteHostNameremoteServiceName 매개 변수에 대해 다른 값을 설정할 수 있습니다.

DatagramSocket 개체에 대한 데이터를 받으려면 앱은 MessageReceived 이벤트를 이벤트 처리기에 할당한 다음 GetOutputStreamAsync 메서드를 호출하기 전에 BindEndpointAsync 또는 BindServiceNameAsync 메서드를 호출하여 DatagramSocket을 로컬 서비스 이름이나 UDP 포트에 바인딩해야 합니다. ConnectAsync 메서드가 호출된 후에 이벤트 처리기 및 바인딩 작업이 발생할 경우 오류가 발생합니다.

일반적인 작업 순서는 다음과 같습니다.

  • DatagramSocket을 만듭니다.
  • MessageReceived 이벤트를 이벤트 처리기에 할당합니다.
  • GetOutputStreamAsync(EndpointPair) 메서드를 호출하여 OutputStream을 가져와 데이터를 원격 끝점으로 전송합니다. 또한 GetOutputStreamAsync(EndpointPair) 메서드는 endpointPair 매개 변수를 사용하여 DatagramSocket을 로컬 서비스 이름 또는 UDP 포트와 로컬 호스트 이름 또는 IP 주소로 바인딩합니다.

앱이 BindEndpointAsync 또는 BindServiceNameAsync 메서드를 사용하여 로컬 서비스 이름 또는 UDP 포트를 바인딩하는 경우 GetOutputStreamAsync 메서드는 ConnectAsync 메서드와 다릅니다. GetOutputStreamAsync 메서드를 사용하는 경우 앱은 원격 대상에서 로컬 서비스 이름 또는 UDP 포트에 전송되는 패킷을 받습니다. ConnectAsync 메서드를 사용하는 경우 앱은 원격 대상에서 ConnectAsync 메서드에 매개 변수로 전달되는 패킷만 받습니다.

요구 사항

지원되는 최소 클라이언트

Windows 8

지원되는 최소 서버

Windows Server 2012

지원되는 최소 전화

Windows Phone 8

Namespace

Windows.Networking.Sockets
Windows::Networking::Sockets [C++]

Metadata

Windows.winmd

DLL

Windows.Networking.dll

Capabilities

ID_CAP_NETWORKING [Windows Phone]

참고 항목

DatagramSocket
GetOutputStreamAsync(HostName, String)
EndpointPair
IOutputStream

 

 

Microsoft는 MSDN 웹 사이트에 대한 귀하의 의견을 이해하기 위해 온라인 설문 조사를 진행하고 있습니다. 참여하도록 선택하시면 MSDN 웹 사이트에서 나가실 때 온라인 설문 조사가 표시됩니다.

참여하시겠습니까?
표시:
© 2014 Microsoft