PNRP a WSALookupServiceNext
PNRP používá funkci WSALookupServiceNext, aby odpovídala dotazům zadaným v předchozím volání WSALookupServiceBegin. Výsledky funkce WSALookupServiceNext jsou určeny nastavením v WSAQUERYSET struktuře předané v počátečním volání funkce WSALookupServiceBe gin. Tato funkce slouží k provedení následujících dvou funkcí:
- Překlad názvu partnerského uzlu na seznam adres
- Výčet síťových cloudů
Pomocí WSANSPIoctllze vyhledávací službu používat asynchronně. Informace o použití funkcí vyhledávací služby asynchronně naleznete v tématu PNRP a WSANSPIoctl.
WSALookupServiceNext funkce blokuje, i když se volá WSANSPIoctl. Před voláním WSALookupServiceNextmusí aplikace počkat, až obdrží oznámení – pokud se jedná o problém blokování.
Překlad názvu partnerského uzlu na seznam adres
Při překladu názvu partnerského uzlu na seznam adres obsahujestrukturaLPWSAQUERYSET vrácená v parametru lpqsResults následující hodnoty:
-
dwSize
-
Vrátí velikost struktury.
-
lpszServiceInstanceName
-
Vrátí název partnerského vztahu – pokud jsou zadány LUP_RETURN_NAME, LUP_RETURN_ALLnebo null.
-
lpServiceClassID
-
Vrátí SVCID_PNRPNAME.
-
lpVersion
-
Vrátí null.
-
lpszComment
-
Vrátí komentář – pokud jsou zadány LUP_RETURN_COMMENT, LUP_RETURN_ALLnebo null.
-
dwNameSpace
-
Vrátí NS_PNRPNAME.
-
lpNSProviderID
-
Vrátí NS_PROVIDER_PNRPNAME.
-
lpszContext
-
Vrátí název cloudu, pokud jsou zadány LUP_RETURN_NAME, LUP_RETURN_ALLnebo null.
-
dwNumberOfProtocols
-
Vrátí nulu (0).
-
lpszQueryString
-
Vrátí null.
-
dwNumberOfCsAddrs
-
Vrátí počet položek v poli CSADDR_INFO, pokud jsou zadány LUP_RETURN_ADDR, LUP_RETURN_ALLnebo null. Tato hodnota a informace v lpcsaBuffer jsou klíčové bity informací vrácených v této struktuře.
-
lpcsaBuffer
-
Vrátí ukazatel na pole CSADDR_INFO struktur, pokud jsou zadány LUP_RETURN_ADDR, LUP_RETURN_ALLnebo null. Tato vyrovnávací paměť a hodnota v dwNumberOfCsAddrs jsou klíčové informační bity vrácené v této struktuře.
-
dwOutputFlags
-
Vrátí nulu (0).
-
lpBlob
-
Vrátí null.
Výčet síťových cloudů
Při vytváření výčtů cloudů obsahujestrukturaLPWSAQUERYSET vrácená v parametru lpqsResults následující hodnoty:
-
dwSize
-
Vrátí velikost struktury.
-
lpszServiceInstanceName
-
Vrátí název cloudu – pokud jsou zadány LUP_RETURN_NAME, LUP_RETURN_ALLnebo null.
-
lpServiceClassID
-
Vrátí SVCID_PNRPCLOUD.
-
lpVersion
-
Vrátí null.
-
lpszComment
-
Vrátí null.
-
dwNameSpace
-
Vrátí NS_PNRPCLOUD.
-
lpNSProviderID
-
Vrátí NS_PROVIDER_PNRPCLOUD.
-
lpszContext
-
Vrátí null.
-
dwNumberOfProtocols
-
Vrátí nulu (0).
-
lpszQueryString
-
Vrátí null.
-
dwNumberOfCsAddrs
-
Vrátí nulu (0).
-
lpcsaBuffer
-
Vrátí null.
-
dwOutputFlags
-
Vrátí nulu (0).
-
lpBlob
-
Vrátí ukazatel na strukturu OBJEKT BLOB, která odkazuje na strukturu PNRPCLOUDINFO – pokud jsou zadány LUP_RETURN_BLOB, LUP_RETURN_ALLnebo null.
PNRPCLOUDINFO – struktura
Při vytváření výčtu názvů cloudu se ve struktuře PNRPCLOUD INFO vrátí následující hodnoty:
-
dwSize
-
Velikost této struktury.
-
Cloud
-
Skutečná hodnota cloudu.
-
enCloudState
-
Aktuální stav cloudu. PNRP_CLOUD_STATE určuje platné hodnoty.
-
enCloudFlags
-
Označuje, že název cloudu je platný v síti nebo je platný pouze v aktuálním počítači. PNRP_CLOUD_FLAGS určuje platné hodnoty. Některé názvy cloudu jsou platné na jakémkoli počítači ve stejné síti. Jiné názvy cloudu jsou platné jenom na aktuálním počítači a můžou být platné jenom po určitou dobu.
- Pokud je enCloudFlags nastavená na PNRP_CLOUD_NAME_LOCAL, název je platný jenom místně.
- Pokud enCloudFlags není nastavená, je možné název cloudu přenést do jiných počítačů.
Související témata
-
PNRP a objektů blob