Névfeloldás konfigurálása és telepítése
Ahhoz, hogy egy névtérszolgáltató elérhető legyen a Windows-szoftvercsatornákon keresztül, megfelelően kell telepíteni a rendszerre, és regisztrálni kell a Windows Socketsben. Ha egy névtérszolgáltató egy szállító telepítési programjának meghívásával van telepítve, konfigurációs adatokat kell hozzáadni egy konfigurációs adatbázishoz, hogy a Ws2_32.dll szükséges információkat adja meg a szolgáltatóról. A Ws2_32.dll exportálja WSCInstallNameSpace a gyártó telepítőprogramjának használatához. Ez a függvény a telepíteni kívánt szolgáltatóval kapcsolatos releváns információk megadására szolgál. Ezek az információk a következőket tartalmazzák:
- Szolgáltató neve – A vezérlőpulton megjelenítendő szolgáltatót jelképező sztring.
- Szolgáltató verziója – A szolgáltató verziója.
- Szolgáltató elérési útja – A szolgáltató DLL-jének elérési útja.
- Névtér – A szolgáltató által támogatott névtér.
- Szolgáltató GUID azonosítója – A szolgáltató/névtér kombinációt képviselő egyedi, szállító által megadott szám. Ez kulcsként szolgál a szolgáltatóra mutató minden további hivatkozáshoz és az eltávolításhoz. Ezek az értékek a Uuidgen.exe segédprogrammal jönnek létre.
- Tárolja az összes jelzőt – egy jelzőt, amely jelzi, hogy ez a névtérszolgáltató felelős-e az összes szolgáltatásosztály sémaadatainak megőrzéséért. Ha létezik ilyen szolgáltató, a Ws2_32.dll nem kell minden egyes névtérszolgáltatót lekérdeznie ezekért az információkért.
Windows Vista és újabb rendszereken egy továbbfejlesztett WSCInstallNameSpaceEx32 függvény érhető el, amely lehetővé teszi, hogy a névtérszolgáltató egy további, a névtérre vonatkozó adatblobot adjon át.
A 64 bites platformokon hasonló WSCInstallNameSpace32 és WSCInstallNameSpaceEx32 függvények érhetők el a névtér 32 bites katalógusban való telepítéséhez.
A Ws2_32.dll egy WSCUnInstallNameSpacenevű függvényt is biztosít a szállító telepítőprogramjának, amely eltávolítja az összes releváns információt a konfigurációs adatbázisból. Ennek a konfigurációs információnak a pontos helye és formátuma privát a Ws2_32.dllszámára, és csak a fent említett függvények manipulálhatók.
A 64 bites platformokon egy hasonló WSCInstallNameSpace32 függvény érhető el a 32 bites katalógusban lévő névtér eltávolításához.
A névtérszolgáltatót bármikor aktívnak vagy inaktívnak tekintjük, és ezt a beállítást a WSCEnableNSProvider és WSCEnableNSProvider32 függvények vezérlik. Az inaktív névtérszolgáltatók továbbra is megjelennek a számbavételkor (a WSAEnumNameSpaceProviders, WSAEnumNameSpaceProvidersEx, WSCEnumNameSpaceProviders32és WSCEnumNameSpaceProvidersEx32 függvények), de a Ws2_32.dll nem irányítja át a lekérdezési vagy szolgáltatásregisztrációs műveleteket ezekhez a szolgáltatókhoz. Ez a képesség akkor lehet hasznos, ha a telepített névtérszolgáltatók közül több is támogat egy adott névteret.
Ha egyetlen API-függvény több névtérszolgáltatóra hivatkozik, az a sorrend, amelyben a lekérdezések és a regisztrációs műveletek a névtérszolgáltatókhoz lesznek irányítva, meghatározatlan. A sorrend nem kapcsolódik ahhoz a sorrendhez, amelyben a névtérszolgáltatók telepítve vannak. A névtérszolgáltatókat kétféleképpen lehet szabályozni a névtér-lekérdezések feloldásához. Először is a WSCEnableNSProvider és WSCEnableNSProvider32 függvények használhatók a névterek számítógépszintű, állandó engedélyezésére és letiltására. Másodszor, az alkalmazások átirányíthatnak egy adott lekérdezést egy adott szolgáltatóhoz úgy, hogy megadják a szolgáltató guid azonosítóját a lekérdezés részeként.