次の方法で共有


PNRP と WSALookupServiceNext

PNRP では、 WSALookupServiceNext 関数を使用して、 WSALookupServiceBegin の以前の呼び出しで指定されたクエリと一致します。 WSALookupServiceNext 関数の結果は、最初の WSALookupServiceBegin 関数呼び出しで渡された WSAQUERYSET 構造体の設定によって決まります。 この関数は、次の 2 つの関数を実行するために使用されます。

  • ピア名をアドレスの一覧に解決する
  • ネットワーク クラウドの列挙

WSANSPIoctl を使用すると、ルックアップ サービスを非同期的に使用できます。 ルックアップ サービス関数を非同期的に使用する方法については、「 PNRP と WSANSPIoctl」を参照してください。

WSANSPIoctl が呼び出された場合でも、WSALookupServiceNext 関数はブロックします。 WSALookupServiceNext を呼び出す前に、ブロックが問題である場合、アプリケーションは通知を受け取るまで待機する必要があります。

ピア名をアドレスの一覧に解決する

ピア名をアドレスのリストに解決する場合、lpqsResults パラメーターで返される LPWSAQUERYSET 構造体には、次の値が含まれます。

Dwsize

構造体のサイズを返します。

lpszServiceInstanceName

ピア名 ( LUP_RETURN_NAMELUP_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_NAMELUP_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_NAMELUP_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_BLOBLUP_RETURN_ALL、または NULL が指定されている場合は、PNRPCLOUDINFO 構造体を指す BLOB 構造体へのポインターを返します。

PNRPCLOUDINFO 構造体

クラウド名を列挙すると、 PNRPCLOUDINFO 構造体で次の値が返されます。

Dwsize

この構造のサイズ。

クラウド

実際のクラウド値。

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