PeerNameResolver.Resolve 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
PNRP 프로토콜을 사용하여 PeerName 개체를 PeerNameRecord로 확인합니다.
오버로드
Resolve(PeerName) |
호출 피어에 알려진 모든 클라우드에서 지정된 PeerName을 확인합니다. |
Resolve(PeerName, Int32) |
호출 피어에 알려진 모든 클라우드에서 지정된 피어 이름을 확인하여 지정된 수를 초과하지 않는 PeerNameRecord 개체를 반환합니다. |
Resolve(PeerName, Cloud) | |
Resolve(PeerName, Cloud, Int32) |
지정된 PeerName에서 특정 Cloud을 확인하여 지정된 수를 초과하지 않는 PeerNameRecord 개체를 반환합니다. |
설명
이 메서드는 클라우드의 피어 이름을 연결합니다. 호출을 PeerNameResolver 호출 하는 것과 비슷합니다는 Resolve 각 피어 이름 레코드에 대 한 메서드는 PeerNameRecordCollection합니다. 참고 개별 피어 이름 레코드 확인 메서드를 사용 하 여 여러 피어 이름 확인 무효화 하지 않습니다.
에 대 한 모든 Resolve 메서드는 해당 하는 ResolveAsync 메서드. ResolveAsync 메서드 비동기 이벤트 처리에 대 한 매개 변수 목록의 시스템 토큰이 포함 된다는 점을 제외 하 고는 전달 될 매개 변수를 동일 합니다.
경우는 Cloud 매개 변수를 지정 하지 않으면, 메서드를 사용 하는 Available 바로 가기를 클라우드 매개 변수를 입력 합니다. 경우는 maxRecords
기본값인 0을 사용 하면 매개 변수가 ArgumentOutOfRangeException 예외를 throw 합니다.
확인 작업 오류 완료 되거나 취소 될 경우에이 이벤트를 발생 합니다.
Resolve(PeerName)
호출 피어에 알려진 모든 클라우드에서 지정된 PeerName을 확인합니다.
public:
System::Net::PeerToPeer::PeerNameRecordCollection ^ Resolve(System::Net::PeerToPeer::PeerName ^ peerName);
public System.Net.PeerToPeer.PeerNameRecordCollection Resolve (System.Net.PeerToPeer.PeerName peerName);
member this.Resolve : System.Net.PeerToPeer.PeerName -> System.Net.PeerToPeer.PeerNameRecordCollection
Public Function Resolve (peerName As PeerName) As PeerNameRecordCollection
매개 변수
반환
지정된 피어 이름과 연결된 모든 피어 이름 레코드(PeerNameRecordCollection 개체로 표시)를 포함하는 PeerNameRecord입니다. 보안되지 않은 피어 이름의 경우 동일한 PeerName을 같은 Cloud의 여러 사용자가 등록하고 여러 엔드포인트와 연결할 수 있습니다.
예외
peerName
매개 변수가 null
로 설정된 경우
지정된 피어 이름을 확인할 수 없는 경우
예제
다음 코드 예제에서는 해결 하는 방법을 보여 줍니다.는 PeerName 에 게시 된 Cloud합니다.
static void Main(string[] args)
{
try
{
if (args.Length != 1)
{
Console.WriteLine("Usage: PeerNameResolver.exe <PeerNameToResolve>");
return;
}
// create a resolver object to resolve a Peer Name that was previously published
PeerNameResolver resolver = new PeerNameResolver();
// The Peer Name to resolve must be passed as the first
// command line argument to the application
PeerName peerName = new PeerName(args[0]);
// Resolve the Peer Name
// This is a network operation and will block until the resolve completes
PeerNameRecordCollection results = resolver.Resolve(peerName);
// Display the data returned by the resolve operation
Console.WriteLine("Resolve operation complete.\n", peerName);
Console.WriteLine("Results for PeerName: {0}", peerName);
Console.WriteLine();
int count = 1;
foreach (PeerNameRecord record in results)
{
Console.WriteLine("Record #{0} results...", count);
Console.Write("Comment:");
if (record.Comment != null)
{
Console.Write(record.Comment);
}
Console.WriteLine();
Console.Write("Data:");
if (record.Data != null)
{
// Assumes the data blob associated with the PeerName
// is made up of ASCII characters
Console.Write(System.Text.Encoding.ASCII.GetString(record.Data));
}
Console.WriteLine();
Console.WriteLine("Endpoints:");
foreach (IPEndPoint endpoint in record.EndPointCollection)
{
Console.WriteLine("\t Endpoint:{0}", endpoint);
Console.WriteLine();
}
count++;
}
Console.ReadKey();
}
catch (Exception e)
{
Console.WriteLine("Error occurred while attempting to resolve the PeerName: {0}", e.Message);
Console.WriteLine(e.StackTrace);
// P2P is not supported on Windows Server 2003
if (e.InnerException != null)
{
Console.WriteLine("Inner Exception is {0}", e.InnerException);
}
}
}
설명
이 메서드는 클라우드의 피어 이름을 연결합니다. 모든 클라우드를 쿼리하여는 PeerName합니다. 피어 이름을 확인할 수 없습니다. 나는 경우 null
, PeerToPeerException throw 됩니다.
보안 되지 않은 피어 이름에 대 한 이름이 있습니다 수 등록 (및 다른 엔드포인트과 연결 된) 동일한 클라우드 내의 여러 피어가 됩니다.
호출을 PeerNameResolver 호출 하는 것과 비슷합니다는 Resolve 각 피어 이름 레코드에 대 한 메서드는 PeerNameRecordCollection합니다. 참고 개별 피어 이름 레코드 확인 메서드를 사용 하 여 여러 피어 이름 확인 무효화 하지 않습니다.
에 대 한 모든 Resolve 메서드는 해당 하는 ResolveAsync 메서드. ResolveAsync 메서드 비동기 이벤트 처리에 대 한 시스템 토큰이 포함 된다는 점을 제외 하 고 해당 매개 변수 목록은 동일 합니다.
경우는 Cloud 매개 변수를 지정 하지 않으면, 메서드를 사용 하는 Available 바로 가기를 클라우드 매개 변수를 입력 합니다.
ResolveCompleted 확인 작업 오류 완료 되거나 취소 될 경우 이벤트가 발생 합니다.
추가 정보
적용 대상
Resolve(PeerName, Int32)
호출 피어에 알려진 모든 클라우드에서 지정된 피어 이름을 확인하여 지정된 수를 초과하지 않는 PeerNameRecord 개체를 반환합니다.
public:
System::Net::PeerToPeer::PeerNameRecordCollection ^ Resolve(System::Net::PeerToPeer::PeerName ^ peerName, int maxRecords);
public System.Net.PeerToPeer.PeerNameRecordCollection Resolve (System.Net.PeerToPeer.PeerName peerName, int maxRecords);
member this.Resolve : System.Net.PeerToPeer.PeerName * int -> System.Net.PeerToPeer.PeerNameRecordCollection
Public Function Resolve (peerName As PeerName, maxRecords As Integer) As PeerNameRecordCollection
매개 변수
- maxRecords
- Int32
모든 PeerNameRecord 개체에서 제공된 peerName
을 확인하여 가져올 최대 Cloud 개체의 수입니다.
반환
크기가 maxRecords
항목보다 작거나 같은 PeerNameRecordCollection입니다. 이 컬렉션에는 확인된 PeerName과 연결되어 있는 피어 이름 레코드가 포함됩니다.
예외
peerName
매개 변수가 null
로 설정된 경우
maxRecords
매개 변수가 0보다 작은 경우
제공된 피어 이름을 확인할 수 없는 경우
설명
이 메서드는 클라우드의 피어 이름을 연결합니다. 모든 클라우드 피어 이름에 대해 쿼리 됩니다. 보안 되지 않은 피어 이름에 대 한 피어 이름이 같은 여러 사용자가 등록 수 Cloud, 다른 엔드포인트과 연결 합니다. 경우는 PeerName 확인할 수 없습니다 (예를 들어 피어 이름 게시 되지 않은)는 PeerToPeerException throw 됩니다.
에 대 한 모든 Resolve 메서드는 해당 하는 ResolveAsync 메서드. ResolveAsync 메서드 비동기 이벤트 처리에 대 한 시스템 토큰이 포함 된다는 점을 제외 하 고 해당 매개 변수 목록은 동일 합니다.
ResolveCompleted 확인 작업 오류 완료 되거나 취소 될 경우 이벤트가 발생 합니다.
적용 대상
Resolve(PeerName, Cloud)
public:
System::Net::PeerToPeer::PeerNameRecordCollection ^ Resolve(System::Net::PeerToPeer::PeerName ^ peerName, System::Net::PeerToPeer::Cloud ^ cloud);
public System.Net.PeerToPeer.PeerNameRecordCollection Resolve (System.Net.PeerToPeer.PeerName peerName, System.Net.PeerToPeer.Cloud cloud);
member this.Resolve : System.Net.PeerToPeer.PeerName * System.Net.PeerToPeer.Cloud -> System.Net.PeerToPeer.PeerNameRecordCollection
Public Function Resolve (peerName As PeerName, cloud As Cloud) As PeerNameRecordCollection
매개 변수
반환
지정된 피어 이름과 연결된 모든 피어 이름 레코드(PeerNameRecordCollection 개체로 표시)를 포함하는 PeerNameRecord입니다. 보안되지 않은 피어 이름의 경우 동일한 PeerName을 같은 Cloud의 여러 사용자가 등록하고 여러 엔드포인트와 연결할 수 있습니다.
예외
peerName
매개 변수가 null
로 설정된 경우
제공된 피어 이름을 확인할 수 없는 경우
설명
경우는 PeerName 확인할 수 없습니다 (즉, 피어 이름 게시 되지 않은)는 PeerToPeerException throw 됩니다.
보안 되지 않은 피어 이름에 대 한 이름이 있습니다 수 등록 (및 다른 엔드포인트과 연결 된) 동일한 클라우드 내의 여러 피어가 됩니다.
에 대 한 모든 Resolve 메서드는 해당 하는 ResolveAsync 메서드. ResolveAsync 메서드 비동기 이벤트 처리에 대 한 시스템 토큰이 포함 된다는 점을 제외 하 고 해당 매개 변수 목록은 동일 합니다.
경우는 Cloud 매개 변수는 null
, PeerNameResolver 사용 하 여를 Available 바로 가기를 입력 합니다 Name, Scope, 및 ScopeId합니다.
ResolveCompleted 확인 작업 오류 완료 되거나 취소 될 경우 이벤트가 발생 합니다.
적용 대상
Resolve(PeerName, Cloud, Int32)
지정된 PeerName에서 특정 Cloud을 확인하여 지정된 수를 초과하지 않는 PeerNameRecord 개체를 반환합니다.
public:
System::Net::PeerToPeer::PeerNameRecordCollection ^ Resolve(System::Net::PeerToPeer::PeerName ^ peerName, System::Net::PeerToPeer::Cloud ^ cloud, int maxRecords);
[System.Security.SecurityCritical]
public System.Net.PeerToPeer.PeerNameRecordCollection Resolve (System.Net.PeerToPeer.PeerName peerName, System.Net.PeerToPeer.Cloud cloud, int maxRecords);
[<System.Security.SecurityCritical>]
member this.Resolve : System.Net.PeerToPeer.PeerName * System.Net.PeerToPeer.Cloud * int -> System.Net.PeerToPeer.PeerNameRecordCollection
Public Function Resolve (peerName As PeerName, cloud As Cloud, maxRecords As Integer) As PeerNameRecordCollection
매개 변수
- maxRecords
- Int32
지정된 클라우드에서 특정 peerName
을 확인하여 가져올 최대 피어 이름 레코드 개체의 수입니다.
반환
크기가 maxRecords
항목보다 작거나 같은 PeerNameRecordCollection입니다. 이 컬렉션에는 확인된 PeerName과 연결되어 있는 피어 이름 레코드가 포함됩니다.
- 특성
예외
peerName
매개 변수가 null
로 설정된 경우
maxRecords
매개 변수가 0보다 작은 경우
제공된 피어 이름을 확인할 수 없는 경우
설명
보안 되지 않은 피어 이름에 대 한 이름이 있습니다 수 등록 (및 다른 엔드포인트과 연결 된) 동일한 클라우드 내의 여러 피어가 됩니다. 피어 이름을 확인할 수 없는 경우는 PeerToPeerException throw 됩니다.
에 대 한 모든 Resolve 메서드는 해당 하는 ResolveAsync 메서드. ResolveAsync 메서드 비동기 이벤트 처리에 대 한 시스템 토큰이 포함 된다는 점을 제외 하 고 해당 매개 변수 목록은 동일 합니다.
경우는 Cloud 매개 변수는 null
, PeerNameResolver 사용 하 여를 Available 바로 가기를 입력 합니다 Name, Scope, 및 ScopeId합니다.
ResolveCompleted 확인 작업 오류 완료 되거나 취소 될 경우 이벤트가 발생 합니다.
적용 대상
.NET