Winsock-secties in een netwerk-INF-bestand

Een INF-bestand voor een NetTrans-onderdeel dat een Winsock-interface biedt, moet deze Winsock-afhankelijkheid opgeven. Een dergelijk INF-bestand moet een winsock-installatiesectie bevatten. Als u een Winsockinstall-sectie wilt maken, voegt u de .Winsock-extensie toe aan de sectienaam DDInstall voor het protocol. Als de sectie DDInstall voor een protocol bijvoorbeeld Ipx heet, moet de sectie Winsock-install voor dat protocol ipx.Winsock worden genoemd.

Opmerking

Winsock-afhankelijkheid is afgeschaft in Windows 8 en hoger.

Een winsock-install-sectie moet een AddSock-instructie bevatten. De AddSock-instructie geeft een sectie met de naam van de leverancier op die waarden bevat die moeten worden toegevoegd aan de HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TransportDriverName\Params\Winsock-sleutel van het onderdeel.

De sectie met de naam van de leverancier waarnaar wordt verwezen door de addSock-instructie moet de volgende vereiste waarden bevatten:

Waardenaam Beschrijving

Transportdienst

Een REG_SZ waarde die de servicenaam van het protocol aangeeft. Dit moet hetzelfde zijn als de Ndi\Service-waarde voor het protocol. Zie Service-Related-waarden toevoegen aan de Ndi-sleutelvoor meer informatie.

HelperDllName

Een REG_EXPAND_SZ-waarde die het pad naar de WSH-DLL (Windows Sockets helper) voor het protocol aangeeft. Zie de WSH DLL-functiesamenvatting voor meer informatie.

MaxSockAddrLength

Een REG_DWORD waarde die de grootste geldige SOCKADDR-grootte, in bytes, aangeeft voor de WSH-DLL

MinSockAddrLength

Een REG_DWORD-waarde die de kleinste geldige SOCKADDR-grootte, in bytes, aangeeft voor de WSH-DLL

Als een optionele ProviderId voor een naamruimteprovider is opgegeven, moeten ook de volgende waarden worden opgegeven:

Waardenaam Beschrijving

ProviderId

Een REG_SZ waarde die de GUID (Globally Unique Identifier) aangeeft die de naamruimteprovider identificeert. De GUID wordt gebruikt als een sleutel voor alle volgende verwijzingen naar de naamruimteprovider. Haal de GUID op door het hulpprogramma uuidgen.exe uit te voeren. Zie de Microsoft Windows SDK voor meer informatie over dit hulpprogramma.

LibraryPath

Een REG_EXPAND_SZ-waarde waarmee het volledige pad naar de DLL van de naamruimteprovider wordt opgegeven.

DisplayString

Een lokaliseerbare tekenreeks die de naam aangeeft die wordt weergegeven voor de naamruimteprovider in de gebruikersinterface.

SupportedNameSpace

Een REG_DWORD-waarde die de naamruimte aangeeft die wordt ondersteund door de naamruimteprovider.

Versie

Een optionele REG_DWORD waarde waarmee het versienummer van de naamruimteprovider wordt opgegeven. Als deze waarde niet is opgegeven, wordt de standaardwaarde (1) gebruikt voor het versienummer.

De volgende naamruimtewaarden kunnen worden toegewezen aan SupportedNameSpace en worden gedefinieerd in Winsock2.h:

Namespace Waarde

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

Zie de Windows SDK-documentatie voor meer informatie over naamruimteproviders.

In het volgende voorbeeld ziet u Winsock-secties voor een IPX-protocol:

[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

Een INF-bestand kan een Winsock-afhankelijkheid voor een protocol verwijderen door een sectie Winsock-remove toe te voegen. Om een Winsock-verwijderingssectie te maken, voegt u de .Winsock-extensie toe aan de sectienaam Verwijderen voor het protocol. Als de sectie Verwijderen voor een protocol bijvoorbeeld Ipx.Remove heet, moet de sectie Winsock-remove voor het protocol ipx.Remove.Winsock worden genoemd.

De sectie Winsock-remove bevat een DelSock-instructie die een inf-writer-benoemde sectie aangeeft. De door de INF-schrijver genoemde sectie moet de transportservice opgeven die moet worden verwijderd. Als een ProviderId eerder is geregistreerd voor het protocol, moet de sectie met de naam van de leverancier ook de ProviderId opgeven die moet worden verwijderd.

In het volgende voorbeeld ziet u twee secties waarin de Winsock-afhankelijkheid voor een IPX-protocol wordt verwijderd:

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