Freigeben über


PNRP und WSALookupServiceNext

PNRP verwendet die WSALookupServiceNext-Funktion , um Abfragen abzugleichen, die in einem vorherigen Aufruf von WSALookupServiceBegin angegeben wurden. Die Ergebnisse der WSALookupServiceNext-Funktion werden durch Einstellungen in der WSAQUERYSET-Struktur bestimmt, die im ersten WSALookupServiceBegin-Funktionsaufruf übergeben werden. Diese Funktion wird verwendet, um die folgenden beiden Funktionen auszuführen:

  • Auflösen eines Peernamens in eine Liste von Adressen
  • Auflisten von Netzwerkclouds

Mithilfe von WSANSPIoctl kann der Nachschlagedienst asynchron verwendet werden. Informationen zur asynchronen Verwendung der Suchdienstfunktionen finden Sie unter PNRP und WSANSPIoctl.

Die WSALookupServiceNext-Funktion blockiert auch dann , wenn WSANSPIoctl aufgerufen wird. Vor dem Aufrufen von WSALookupServiceNext muss eine Anwendung warten, bis sie eine Benachrichtigung empfängt– wenn die Blockierung ein Problem ist.

Auflösen eines Peernamens in eine Liste von Adressen

Beim Auflösen eines Peernamens in eine Liste von Adressen enthält die im lpqsResults-Parameter zurückgegebene LPWSAQUERYSET-Struktur die folgenden Werte:

dwSize

Gibt die Größe der Struktur zurück.

lpszServiceInstanceName

Gibt einen Peernamen zurück, wenn LUP_RETURN_NAME, LUP_RETURN_ALL oder NULL angegeben sind.

lpServiceClassID

Gibt SVCID_PNRPNAME zurück.

lpVersion

Gibt NULL zurück.

lpszComment

Gibt einen Kommentar zurück, wenn LUP_RETURN_COMMENT, LUP_RETURN_ALL oder NULL angegeben sind.

dwNameSpace

Gibt NS_PNRPNAME zurück.

lpNSProviderID

Gibt NS_PROVIDER_PNRPNAME zurück.

lpszContext

Gibt den Cloudnamen zurück, wenn LUP_RETURN_NAME, LUP_RETURN_ALL oder NULL angegeben sind.

dwNumberOfProtocols

Gibt null (0) zurück.

lpszQueryString

Gibt NULL zurück.

dwNumberOfCsAddrs

Gibt die Anzahl der Einträge im CSADDR_INFO-Array zurück, wenn LUP_RETURN_ADDR, LUP_RETURN_ALL oder NULL angegeben sind. Dieser Wert und die Informationen in lpcsaBuffer sind die wichtigsten Informationsbits, die in dieser Struktur zurückgegeben werden.

lpcsaBuffer

Gibt einen Zeiger auf ein Array von CSADDR_INFO Strukturen zurück, wenn LUP_RETURN_ADDR, LUP_RETURN_ALL oder NULL angegeben sind. Dieser Puffer und der Wert in dwNumberOfCsAddrs sind die Schlüsselinformationsbits, die in dieser Struktur zurückgegeben werden.

dwOutputFlags

Gibt null (0) zurück.

lpBlob

Gibt NULL zurück.

Aufzählen von Netzwerkwolken

Beim Aufzählen von Clouds enthält die im lpqsResults-Parameter zurückgegebene LPWSAQUERYSET-Struktur die folgenden Werte:

dwSize

Gibt die Größe der Struktur zurück.

lpszServiceInstanceName

Gibt einen Cloudnamen zurück, wenn LUP_RETURN_NAME, LUP_RETURN_ALL oder NULL angegeben sind.

lpServiceClassID

Gibt SVCID_PNRPCLOUD zurück.

lpVersion

Gibt NULL zurück.

lpszComment

Gibt NULL zurück.

dwNameSpace

Gibt NS_PNRPCLOUD zurück.

lpNSProviderID

Gibt NS_PROVIDER_PNRPCLOUD zurück.

lpszContext

Gibt NULL zurück.

dwNumberOfProtocols

Gibt null (0) zurück.

lpszQueryString

Gibt NULL zurück.

dwNumberOfCsAddrs

Gibt null (0) zurück.

lpcsaBuffer

Gibt NULL zurück.

dwOutputFlags

Gibt null (0) zurück.

lpBlob

Gibt einen Zeiger auf eine BLOB-Struktur zurück, die auf eine PNRPCLOUDINFO-Struktur verweist– wenn LUP_RETURN_BLOB, LUP_RETURN_ALL oder NULL angegeben sind.

PNRPCLOUDINFO-Struktur

Beim Aufzählen von Cloudnamen werden die folgenden Werte in der PNRPCLOUDINFO-Struktur zurückgegeben:

dwSize

Die Größe dieser Struktur.

Cloud

Der tatsächliche Cloudwert.

enCloudState

Der aktuelle Zustand einer Cloud. PNRP_CLOUD_STATE gibt die gültigen Werte an.

enCloudFlags

Gibt an, dass ein Cloudname in einem Netzwerk oder nur auf einem aktuellen Computer gültig ist. PNRP_CLOUD_FLAGS gibt die gültigen Werte an. Einige Cloudnamen sind auf jedem Computer im selben Netzwerk gültig. Andere Cloudnamen sind nur auf einem aktuellen Computer gültig und möglicherweise nur für einen bestimmten Zeitraum gültig.

  • Wenn enCloudFlags auf PNRP_CLOUD_NAME_LOCAL festgelegt ist , ist der Name nur lokal gültig.
  • Wenn enCloudFlags nicht festgelegt ist, kann der Cloudname auf andere Computer übertragen werden.

PNRP und BLOB

PNRP und WSALookupServiceEnd

PNRP und WSANSPIoctl

PNRP und WSAQUERYSET

PNRPCLOUDINFO

PNRPINFO

PNRP NSP-Fehlercodes

WSALookupServiceBegin