PNRP と WSALookupServiceNext
PNRP は、WSALookupServiceNext関数を使用して、WSALookupServiceBegin をする前の呼び出しで指定されたクエリと一致します。 WSALookupServiceNext 関数の結果は、WSALookupServiceBegin 関数呼び出しの初期 で渡された WSAQUERYSET 構造体 の設定によって決まります。 この関数は、次の 2 つの関数を実行するために使用されます。
- アドレスの一覧へのピア名の解決
- ネットワーク クラウドの列挙
WSANSPIoctlを使用すると、参照サービスを非同期的に使用できます。 ルックアップ サービス関数を非同期的に使用する方法については、PNRP と WSANSPIoctl を参照してください。
WSANSPIoctl が呼び出された場合でも、WSALookupServiceNext 関数ブロック。 WSALookupServiceNext 呼び出す前に、アプリケーションは通知を受信するまで待機する必要があります(ブロックが問題である場合)。
ピア名をアドレスの一覧に解決する
ピア名をアドレスのリストに解決する場合、lpqsResults パラメーターで返される LPWSAQUERYSET構造体には、次の値が含まれます。
-
dwSizeを する
-
構造体のサイズを返します。
-
lpszServiceInstanceNameを する
-
ピア名 (LUP_RETURN_NAME、LUP_RETURN_ALL、または NULL 指定されている場合) を返します。
-
lpServiceClassIDを する
-
SVCID_PNRPNAMEを返します。
-
lpVersion
-
NULL 返します。
-
lpszCommentを する
-
LUP_RETURN_COMMENT、LUP_RETURN_ALL、または NULL 指定されている場合は、コメントを返します。
-
dwNameSpaceを する
-
NS_PNRPNAMEを返します。
-
lpNSProviderIDの
-
NS_PROVIDER_PNRPNAMEを返します。
-
lpszContextを する
-
LUP_RETURN_NAME、LUP_RETURN_ALL、または NULL が指定されている場合 クラウド名を返します。
-
dwNumberOfProtocolsの
-
ゼロ (0) を返します。
-
lpszQueryStringを する
-
NULL 返します。
-
dwNumberOfCsAddrsを する
-
LUP_RETURN_ADDR、LUP_RETURN_ALL、または NULL が指定されている場合は、CSADDR_INFO配列 エントリの数を返します。 この値と lpcsaBuffer 内の情報は、この構造体で返される情報のキー ビットです。
-
lpcsaBufferを する
-
LUP_RETURN_ADDR、LUP_RETURN_ALL、または NULL が指定されている場合は、CSADDR_INFO構造体の配列へのポインター 返します。 このバッファーと dwNumberOfCsAddrs の値は、この構造体で返されるキー情報ビットです。
-
dwOutputFlagsの
-
ゼロ (0) を返します。
-
lpBlobを する
-
NULL 返します。
ネットワーク クラウドの列挙
クラウドを列挙する場合、lpqsResults パラメーターで返される LPWSAQUERYSET 構造体には、次の値が含まれます。
-
dwSizeを する
-
構造体のサイズを返します。
-
lpszServiceInstanceNameを する
-
LUP_RETURN_NAME、LUP_RETURN_ALL、または NULL 指定されている場合は、クラウド名を返します。
-
lpServiceClassIDを する
-
SVCID_PNRPCLOUDを返します。
-
lpVersion
-
NULL 返します。
-
lpszCommentを する
-
NULL 返します。
-
dwNameSpaceを する
-
NS_PNRPCLOUDを返します。
-
lpNSProviderIDの
-
NS_PROVIDER_PNRPCLOUDを返します。
-
lpszContextを する
-
NULL 返します。
-
dwNumberOfProtocolsの
-
ゼロ (0) を返します。
-
lpszQueryStringを する
-
NULL 返します。
-
dwNumberOfCsAddrsを する
-
ゼロ (0) を返します。
-
lpcsaBufferを する
-
NULL 返します。
-
dwOutputFlagsの
-
ゼロ (0) を返します。
-
lpBlobを する
-
LUP_RETURN_BLOB、LUP_RETURN_ALL、または NULL が指定されている場合、PNRPCLOUDINFO 構造体を指す BLOB 構造体へのポインター 返します。
PNRPCLOUDINFO 構造体
クラウド名を列挙すると、PNRPCLOUDINFO 構造体に次の値が返されます。
-
dwSizeを する
-
この構造体のサイズ。
-
Cloud
-
実際のクラウド値。
-
enCloudStateを する
-
クラウドの現在の状態。 PNRP_CLOUD_STATE は有効な値を指定します。
-
enCloudFlagsを する
-
クラウド名がネットワーク上で有効であるか、現在のコンピューターでのみ有効であることを示します。 PNRP_CLOUD_FLAGS 有効な値を指定します。 一部のクラウド名は、同じネットワーク上の任意のコンピューターで有効です。 その他のクラウド名は、現在のコンピューターでのみ有効であり、一定期間のみ有効な場合があります。
- enCloudFlags が PNRP_CLOUD_NAME_LOCAL に設定されている場合、 名前はローカルでのみ有効です。
- enCloudFlags 設定されていない場合は、クラウド名を他のコンピューターに転送できます。
関連トピック
-
PNRP と BLOB の
-
PNRP と WSALookupServiceEnd を する
-
PNRP と WSANSPIoctl を する
-
PNRP と WSAQUERYSET を する
-
PNRPCLOUDINFOをする
-
PNRPINFOをする
-
PNRP NSP エラー コード を する
-
WSALookupServiceBeginの