PeerNameResolver.ResolveAsync 方法

定義

這些方法會在呼叫端對等電腦已知的所有 Cloud 中,針對指定的 PeerName 開始進行非同步解析作業。

多載

ResolveAsync(PeerName, Object)

在所有雲端中針對呼叫對等已知的指定 PeerName 開始非同步對等名稱解析作業。

ResolveAsync(PeerName, Int32, Object)

在所有雲端中針對呼叫對等已知的指定 PeerName 開始非同步對等名稱解析作業,只會傳回對等名稱的 maxRecords 項目。

ResolveAsync(PeerName, Cloud, Object)

在指定的 Cloud 中針對指定 PeerName,開始非同步對等名稱解析作業。

ResolveAsync(PeerName, Cloud, Int32, Object)

在指定的 Cloud 中針對指定 PeerName,開始非同步對等名稱解析作業。 解析作業針對指定的對等名稱將不會解析超過 maxRecords 個項目。

備註

對於每個 Resolve 方法,都有相等 ResolveAsync 的方法,在需要異步處理時會使用此方法。 它們在傳遞的參數中完全相同,不同之處在於 ResolveAsync 在其參數清單中包含系統令牌以進行事件處理。

如果 Resolve 方法與 ResolveAsync 方法之間發生參數不符,而且 Cloud 未提供 參數,此方法會 Available 使用快捷方式填入雲端參數。

ResolveAsync(PeerName, Object)

在所有雲端中針對呼叫對等已知的指定 PeerName 開始非同步對等名稱解析作業。

public:
 void ResolveAsync(System::Net::PeerToPeer::PeerName ^ peerName, System::Object ^ userState);
public void ResolveAsync (System.Net.PeerToPeer.PeerName peerName, object userState);
member this.ResolveAsync : System.Net.PeerToPeer.PeerName * obj -> unit
Public Sub ResolveAsync (peerName As PeerName, userState As Object)

參數

peerName
PeerName

要解析的 PeerName

userState
Object

包含有關對等名稱解析作業狀態資訊的使用者定義物件。

例外狀況

peerNameuserState 參數之一或二者設為 null

備註

這個方法會以異步方式將對等名稱與雲端產生關聯。 系統會查詢所有雲端。PeerName 它會引發 ResolveCompleted 事件,以回呼 方法 OnResolveCompleted 。 或者,它會引發 ResolveProgressChanged 事件,以回呼 方法 OnResolveProgressChanged

如果無法解析對等名稱, PeerToPeerException 則會擲回 。

對於不安全的對等名稱,相同的名稱可以註冊 (,並與相同雲端內不同對等) 的不同端點相關聯。

PeerNameResolver呼叫 方法類似於針對 中的每個PeerNameRecordCollection對等名稱記錄呼叫 ResolveAsync 方法。 請注意,在個別對等名稱記錄上使用 Resolve 方法並不會使解析多個對等名稱失效。

對於每個 ResolveAsync 方法,都有相等 Resolve 的方法。 其參數清單完全相同,不同之處在於 ResolveAsync 方法包含異步事件處理的系統令牌,而 Resolve 方法適用於同步處理。

解析程式物件的所有異步參考都會與唯一標識符標記協調。 此 userState 令牌或訊息標識碼可讓操作系統在訊息放在消息佇列之後,將訊息傳遞至單一接收進程。

ResolveCompleted如果解析作業發生錯誤或取消,就會引發 事件。

適用於

ResolveAsync(PeerName, Int32, Object)

在所有雲端中針對呼叫對等已知的指定 PeerName 開始非同步對等名稱解析作業,只會傳回對等名稱的 maxRecords 項目。

public:
 void ResolveAsync(System::Net::PeerToPeer::PeerName ^ peerName, int maxRecords, System::Object ^ userState);
public void ResolveAsync (System.Net.PeerToPeer.PeerName peerName, int maxRecords, object userState);
member this.ResolveAsync : System.Net.PeerToPeer.PeerName * int * obj -> unit
Public Sub ResolveAsync (peerName As PeerName, maxRecords As Integer, userState As Object)

參數

peerName
PeerName

要解析的 PeerName

maxRecords
Int32

對等名稱可取得的記錄數目上限。

userState
Object

使用者定義物件,包含解析作業的相關資訊。

例外狀況

peerNameuserState 參數之一或二者設為 null

maxRecords 參數小於或等於零。

備註

這個方法會以異步方式將對等名稱與雲端產生關聯。 系統會查詢所有雲端。PeerName 對於不安全的對等名稱,相同的名稱可以註冊 (,並與相同雲端內不同對等) 的不同端點相關聯。 如果無法解析對等名稱或 為 nullPeerToPeerException 則會擲回 。

這個方法會 ResolveCompleted 引發 事件,這個事件會呼叫回 OnResolveCompleted 方法。 或者,它會引發 ResolveProgressChanged 事件,以回呼 方法 OnResolveProgressChanged

對於每個 ResolveAsync 方法,都有相等 Resolve 的方法。 其參數清單完全相同,不同之處在於 ResolveAsync 方法包含異步事件處理的系統令牌,而 Resolve 方法適用於同步處理。

解析程式物件的所有異步參考都會與唯一標識符標記 Object協調。 此 userState 令牌或訊息標識碼可讓操作系統在訊息放在消息佇列之後,將訊息傳遞至單一接收進程。

ResolveCompleted如果解析作業發生錯誤或取消,就會引發 事件。

適用於

ResolveAsync(PeerName, Cloud, Object)

在指定的 Cloud 中針對指定 PeerName,開始非同步對等名稱解析作業。

public:
 void ResolveAsync(System::Net::PeerToPeer::PeerName ^ peerName, System::Net::PeerToPeer::Cloud ^ cloud, System::Object ^ userState);
public void ResolveAsync (System.Net.PeerToPeer.PeerName peerName, System.Net.PeerToPeer.Cloud cloud, object userState);
member this.ResolveAsync : System.Net.PeerToPeer.PeerName * System.Net.PeerToPeer.Cloud * obj -> unit
Public Sub ResolveAsync (peerName As PeerName, cloud As Cloud, userState As Object)

參數

peerName
PeerName

要解析的 PeerName

cloud
Cloud

要在其中解析 peerNameCloud

userState
Object

包含對等名稱解析作業資訊的使用者定義 Object

例外狀況

peerNameuserState 參數之一或二者設為 null

備註

這個方法會 ResolveCompleted 引發 事件,這個事件會呼叫回 OnResolveCompleted 方法。 或者,它會引發 ResolveProgressChanged 事件,以回呼 方法 OnResolveProgressChanged

對於不安全的對等名稱,相同的名稱可以註冊 (,並與相同雲端內不同對等) 的不同端點相關聯。

Cloud如果 參數為 null,則會使用Available快捷方式解析名稱,這會初始化、 ScopeScopeId 屬性的Name預設值。

對於每個 ResolveAsync 方法,都有相等 Resolve 的方法。 其參數清單完全相同,不同之處在於 ResolveAsync 方法包含異步事件處理的系統令牌,而 Resolve 方法適用於同步處理。

解析程式物件的所有異步參考都會與唯一標識符標記協調。 此 userState 令牌或訊息標識碼可讓操作系統在訊息放在消息佇列之後,將訊息傳遞至單一接收進程。

ResolveCompleted如果解析作業發生錯誤或取消,就會引發 事件。

適用於

ResolveAsync(PeerName, Cloud, Int32, Object)

在指定的 Cloud 中針對指定 PeerName,開始非同步對等名稱解析作業。 解析作業針對指定的對等名稱將不會解析超過 maxRecords 個項目。

public:
 void ResolveAsync(System::Net::PeerToPeer::PeerName ^ peerName, System::Net::PeerToPeer::Cloud ^ cloud, int maxRecords, System::Object ^ userState);
[System.Security.SecurityCritical]
public void ResolveAsync (System.Net.PeerToPeer.PeerName peerName, System.Net.PeerToPeer.Cloud cloud, int maxRecords, object userState);
[<System.Security.SecurityCritical>]
member this.ResolveAsync : System.Net.PeerToPeer.PeerName * System.Net.PeerToPeer.Cloud * int * obj -> unit
Public Sub ResolveAsync (peerName As PeerName, cloud As Cloud, maxRecords As Integer, userState As Object)

參數

peerName
PeerName

要解析的 peerName

cloud
Cloud

要在其中解析 peerNamecloud

maxRecords
Int32

針對 peerNamecloud 取得記錄的最大數目。

userState
Object

包含對等名稱解析作業資訊的使用者定義物件。

屬性

例外狀況

peerNameuserState 參數之一或二者設為 null

一或多個提供的參數無效。

至少需要一個事件處理常式才能成功完成此作業。

maxRecords 參數小於或等於零。

備註

對於不安全的對等名稱,相同的名稱可以註冊 (,並與相同雲端內不同對等) 的不同端點相關聯。

這個方法會 ResolveCompleted 引發 事件,這個事件會呼叫回 OnResolveCompleted 方法。 或者,它會引發 ResolveProgressChanged 事件,以回呼 方法 OnResolveProgressChanged

Cloud如果 參數為 null,則會使用Available快捷方式解析名稱,這會初始化、 ScopeScopeId 屬性的Name預設值。

對於每個 ResolveAsync 方法,都有相等 Resolve 的方法。 其參數清單完全相同,不同之處在於 ResolveAsync 方法包含異步事件處理的系統令牌,而 Resolve 方法適用於同步處理。

對等解析程序物件的所有異步參考都會與唯一標識符標記 Object協調。 此 userState 令牌或訊息標識碼可讓操作系統在訊息放在消息佇列之後,將訊息傳遞至單一接收進程。

ResolveCompleted如果解析作業發生錯誤或取消,就會引發 事件。

適用於