Megosztás a következőn keresztül:


PNRP és WSALookupServiceBegin

A PNRP a WSALookupServiceBegin függvénnyel indítja el azt a folyamatot, amely lehetővé teszi egy alkalmazás számára a következőket:

Az egyik függvényt végrehajtó ügyfelek a WSALookupServiceBegin, WSALookupServiceNextés WSALookupServiceEnd függvényeket használják.

A WSANSPIoctlhasználatával a keresési szolgáltatás aszinkron módon használható. A keresési szolgáltatásfüggvények aszinkron használatáról további információt a PNRP és a WSANSPIoctlcímű témakörben talál.

A társnevek használatának folyamata eltér a felhőktől. Ebben a témakörben minden folyamatot külön-külön ismertetünk.

Név feloldása

Az alkalmazások WSALookupServiceBegin használatával szerzik be egy másik számítógépen regisztrált társszolgáltatás IP-címét, portját és protokollját. A WSALookupServiceBegin függvény a névfeloldási folyamat elindítására, valamint a paraméterek és korlátozások beállítására szolgál. A rendszer egy leírót ad vissza, amelyet WSALookupServiceNext és WSANSPIoctlhívásakor kell használni.

lpqsRestrictions

Társnév feloldásakor az LPWSAQUERYSET struktúrának, amelyet a lpqsRestrictions paraméterhivatkozásoknak tartalmazniuk kell a következő értékeket:

dwSize

A struktúra méretét adja meg.

lpszServiceInstanceName

Megadja a feloldandó társ nevét.

lpServiceClassID

SVCID_PNRPNAMEkell lennie.

lpVersion

Fenntartott, null kell lennie.

lpszComment

Fenntartott, null kell lennie.

dwNameSpace

NS_PNRPNAME vagy NS_ALLkell lennie.

lpNSProviderID

A NS_PROVIDER_PNRPNAME vagy NULLkell lennie.

lpszContext

Felhőnévnek, üres sztringnek vagy NULLkell lennie. Ha ez az érték NULL vagy üres sztring, a rendszer az alapértelmezett "Global_" felhőt használja. Ellenkező esetben érvényes felhőnévre kell mutatnia.

dwNumberOfProtocols

Fenntartott, nullának (0) kell lennie.

lpszQueryString

Fenntartott, null kell lennie.

dwNumberOfCsAddrs

Fenntartott, nullának (0) kell lennie.

lpcsaBuffer

Fenntartott, null kell lennie.

dwOutputFlags

Fenntartott, nullának (0) kell lennie.

lpBlob

Egy BLOB- struktúrára mutató mutatónak vagy null kell lennie. Ha NULL, a rendszer az alapértelmezett értékeket használja. Ha be van állítva, lpBlob egy PNRPINFO struktúrára mutat, és a PNRPINFO struktúrában meghatározott paramétereket kell beállítani. További információt a PNRPINFO struktúra alábbi leírásában talál.

A PNRPINFO struktúrája

Ha a LPWSAQUERYSET struktúrájának lpBlob tagja van beállítva, a PNRPINFO struktúrájának következő tagjait kell beállítani:

dwSize

A struktúra méretét adja meg.

lpwszIdentitási

Fenntartott, null kell lennie.

nMaxResolve

Megadja a kért feloldások számát.

dwTimeout

A válaszok várakozásához kért időtúllépési időtartamot adja meg. Az alapértelmezett érték 30 másodperc. A maximális érték 600 másodperc (10 perc).

dwLifetime

Fenntartott, nullának (0) kell lennie.

enResolveCriteria

Az engedélyezett értékek egyikének kell lennie. Az alapértelmezett érték a PNRP_RESOLVE_CRITERIA_NON_CURRENT_PROCESS_PEER_NAME. Az érvényes értékeket a PNRP_RESOLVE_CRITERIAadja meg.

dwFlags

Nullának (0) vagy PNRPINFO_HINTkell lennie. Az alapértelmezett érték nulla (0).

saHint

Megadja a tipp IP-címét. A tipp a legközelebbi társnév megkeresésére szolgál. A tipp formátuma egy IPv6-cím. Ha saHint nincs megadva a legközelebbi társnév megkeresésekor, a rendszer ehelyett a helyi számítógép IPv6-címét használja. A rendszer figyelmen kívül hagyja ezt a tagot, ha dwFlags nincs beállítva.

enNameState

Fenntartott, nullának (0) kell lennie.

dwControlFlags

A PNRP a következő LUP_RETURN_* jelzőket támogatja:

Érték Leírás
LUP_RETURN_NAME Nevet és környezetet ad vissza.
LUP_RETURN_COMMENT Egy névhez társított megjegyzést ad vissza.
LUP_RETURN_ADDR Egy névhez társított címet ad vissza.

 

Hálózati felhők számbavétele

lpqsRestrictions

Felhők számbavételekor az LPWSAQUERYSET struktúrának, amelyet a lpqsRestrictions paraméterhivatkozásoknak tartalmazniuk kell a következő értékeket:

dwSize

A struktúra méretét adja meg.

lpszServiceInstanceName

Null kell lennie.

lpServiceClassID

SVCID_PNRPCLOUDkell lennie.

lpVersion

Fenntartott, null kell lennie.

lpszComment

Fenntartott, null kell lennie.

dwNameSpace

NS_PNRPCLOUDkell lennie.

lpNSProviderID

NS_PROVIDER_PNRPCLOUD vagy NULLkell lennie.

lpszContext

Fenntartott, null kell lennie.

dwNumberOfProtocols

Fenntartott, nullának (0) kell lennie.

lpszQueryString

Fenntartott, null kell lennie.

dwNumberOfCsAddrs

Fenntartott, nullának (0) kell lennie.

lpcsaBuffer

Fenntartott, null kell lennie.

dwOutputFlags

Fenntartott, nullának (0) kell lennie.

lpBlob

Mutasson egy BLOB struktúrára, amely egy PNRPCLOUDINFO struktúrára mutat. Ha lpBlob NULL , a rendszer az összes felhőt felsorolja.

A PNRPCLOUDINFO struktúrája

Felhők számbavételekor a PNRPCLOUDINFO struktúrájának következő tagjait kell beállítani:

dwSize

A struktúra méretét adja meg.

felhőbeli

Egy olyan struktúrára mutat, amely meghatározza a keresési eredmények szűréséhez használható feltételeket. A Cloud.Scope tag lehet PNRP_SCOPE_ANY, PNRP_GLOBAL_SCOPE, PNRP_SITE_LOCAL_SCOPEvagy PNRP_LINK_LOCAL_SCOPE. Ha PNRP_SCOPE_ANY van megadva, a rendszer minden felhőt visszaad. Ellenkező esetben csak az Cloud.Scope megfelelő felhők lesznek visszaadva.

enCloudState

Fenntartott, nullának (0) kell lennie.

dwControlFlags

A PNRP a következő LUP_RETURN_* jelzőket támogatja:

Érték Leírás
LUP_RETURN_NAME Nevet és környezetet ad vissza.
LUP_RETURN_BLOB A felhőhöz társított BLOB- adja vissza.

 

PNRP- és BLOB-

PNRP és WSALookupServiceEnd

PNRP és WSALookupServiceNext

PNRP és WSANSPIoctl

PNRP és WSAQUERYSET

PNRPCLOUDINFO

PNRPINFO

PNRP NSP hibakódjai