Configuration et installation du fournisseur d’espaces de noms
- WSCEnableNSProvider
- WSCEnableNSProvider32
- WSCInstallNameSpace
- WSCInstallNameSpace32
- WSCInstallNameSpaceEx
- WSCInstallNameSpaceEx32
- WSCUnInstallNameSpace
- WSCUnInstallNameSpace32
- WSCWriteNameSpaceOrder
- WSCWriteNameSpaceOrder32
Comme mentionné précédemment, l’application d’installation d’un fournisseur d’espace de noms doit appeler WSCInstallNameSpace ou WSCInstallNameSpaceEx pour s’inscrire auprès du Ws2_32.dll et fournir des informations de configuration statiques. Pour l’installer dans le catalogue 32 bits sur une plateforme 64 bits, le fournisseur d’espaces de noms doit appeler WSCInstallNameSpace32 ou WSCInstallNameSpaceEx32. Le Ws2_32.dll utilise ces informations pour accomplir sa fonction de routage et dans son implémentation de WSAEnumNameSpaceProviders et WSAEnumNameSpaceProvidersEx. La fonction WSCUnInstallNameSpace est utilisée pour supprimer un fournisseur d’espaces de noms du Registre, et la fonction WSCEnableNSProvider est utilisée pour basculer un fournisseur entre les états actif et inactif.
Sur une plateforme 64 bits, WSCUnInstallNameSpace32 et WSCEnableNSProvider32 sont des fonctions similaires pour traiter le catalogue 32 bits.
Les résultats de ces trois opérations ne sont pas visibles pour les applications actuellement chargées et en cours d’exécution. Seules les applications qui commencent à s’exécuter après que ces opérations se sont produites seront affectées par celles-ci.
Cette architecture prend explicitement en charge l’instanciation de plusieurs fournisseurs d’espaces de noms au sein d’une seule DLL, mais chaque fournisseur doit disposer d’un identificateur de fournisseur d’espaces de noms (GUID) unique alloué, et un appel distinct à WSCInstallNameSpace ou WSCInstallNameSpaceExex doit se produire pour chaque instanciation (Sur les plateformes 64 bits, les fonctions du catalogue 32 bits sont WSCInstallNameSpace32 et WSCInstallNameSpaceEx32). Un tel fournisseur peut déterminer quelle instanciation est appelée, car l’identificateur du fournisseur d’espaces de noms (NSP) apparaît en tant que paramètre dans chaque fonction NSP.