Partager via


Sections Winsock dans un fichier INF réseau

Un fichier INF pour un composant NetTrans qui fournit une interface Winsock doit spécifier cette dépendance Winsock. Ce fichier INF doit contenir une section Winsock-install . Pour créer une section Winsockinstall, ajoutez le . Extension Winsock au nom de section DDInstall pour le protocole. Par exemple, si la section DDInstall d’un protocole est nommée Ipx, la section Winsock-install pour ce protocole doit être nommée Ipx.Winsock.

Notes

La dépendance Winsock a été déconseillée dans Windows 8 et versions ultérieures.

Une section Winsock-install doit contenir une directive AddSock . La directive AddSock spécifie une section nommée fournisseur qui contient des valeurs à ajouter à la clé TransportDriverName\Params\WinsockHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ du composant.

La section nommée fournisseur référencée par la directive AddSock doit contenir les valeurs requises suivantes :

Nom de la valeur Description

TransportService

Valeur REG_SZ qui spécifie le nom du service du protocole. Cette valeur doit être identique à la valeur Ndi\Service pour le protocole. Pour plus d’informations, consultez Ajout de valeurs Service-Related à la clé Ndi.

HelperDllName

Valeur REG_EXPAND_SZ qui spécifie le chemin d’accès à la DLL WSH (Windows Sockets Helper) pour le protocole. Pour plus d’informations, consultez Résumé de la fonction DLL WSH.

MaxSockAddrLength

Valeur REG_DWORD qui spécifie la plus grande taille SOCKADDR valide, en octets, pour la DLL WSH

MinSockAddrLength

Valeur REG_DWORD qui spécifie la plus petite taille SOCKADDR valide, en octets, pour la DLL WSH

Si un ProviderId facultatif pour un fournisseur d’espaces de noms est spécifié, les valeurs suivantes doivent également être spécifiées :

Nom de la valeur Description

ProviderId

Valeur REG_SZ qui spécifie l’identificateur global unique (GUID) qui identifie le fournisseur d’espaces de noms. Le GUID est utilisé comme clé pour toutes les références suivantes au fournisseur d’espaces de noms. Obtenez le GUID en exécutant l’utilitaire uuidgen.exe. Pour plus d’informations sur cet utilitaire, consultez la Microsoft Windows SDK.

LibraryPath

Valeur REG_EXPAND_SZ qui spécifie le chemin d’accès complet à la DLL du fournisseur d’espace de noms.

DisplayString

Chaîne localisable qui spécifie le nom affiché pour le fournisseur d’espaces de noms dans l’interface utilisateur.

SupportedNameSpace

Valeur REG_DWORD qui spécifie l’espace de noms pris en charge par le fournisseur d’espaces de noms.

Version

Valeur REG_DWORD facultative qui spécifie le numéro de version du fournisseur d’espaces de noms. Si cette valeur n’est pas spécifiée, la valeur par défaut (1) est utilisée pour le numéro de version.

Les valeurs d’espace de noms suivantes peuvent être affectées à SupportedNameSpace et sont définies dans Winsock2.h :

Espace de noms Valeur

NS_ALL

0

NS_SAP

1

NS_NDS

2

NS_PEER_BROWSE

3

NS_TCPIP_LOCAL

10

NS_TCPIP_HOSTS

11

NS_DNS

12

NS_NETBT

13

NS_WINS

14

NS_NBP

20

NS_MS

30

NS_STDA

31

NS_CAIRO

32

NS_X500

40

NS_NIS

41

NS_WRQ

50

Pour plus d’informations sur les fournisseurs d’espaces de noms, consultez la documentation du Kit de développement logiciel (SDK) Windows.

L’exemple suivant montre les sections Winsock pour un protocole IPX :

[Ipx.Winsock]
AddSock = Install.IpxWinsock
 
[Install.IpxWinsock]
TransportService = nwlinkipx
HelperDllName = "%%SystemRoot%%\System32\wshisn.dll"
MaxSockAddrLength = 0x10
MinSockAddrLength = 0xe
ProviderId = "GUID"
LibraryPath = "%SystemRoot%\\System32\\nwprovau.dll"
DisplayString = %NwlnkIpx_Desc%
SupportedNameSpace = 1
Version = 2

Un fichier INF peut supprimer une dépendance Winsock pour un protocole en incluant une section Winsock-remove . Pour créer une section Winsock-remove , ajoutez le . Extension Winsock du nom de section Supprimer pour le protocole. Par exemple, si la section Supprimer d’un protocole est nommée Ipx.Remove, la section Winsock-remove du protocole doit être nommée Ipx.Remove.Winsock.

La section Winsock-remove contient une directive DelSock qui spécifie une section nommée INF-writer. La section INF-writer-named doit spécifier le service de transport à supprimer. Si un ProviderId a été précédemment inscrit pour le protocole, la section vendor-named doit également spécifier le ProviderId à supprimer.

L’exemple suivant montre deux sections qui suppriment la dépendance Winsock pour un protocole IPX :

[Ipx.Remove.Winsock]
DelSock = Remove.IpxWinsock
 
[Remove.IpxWinsock]
TransportService = nwlinkipx
ProviderId = "GUID"