Configuring a WSH DLL

This topic is obsolete for Windows Server 2003, Windows Vista, and later. Windows Sockets Helper functions ( WSH Xxx) are no longer supported.

Two places in the registry must be set up with standardized configuration information for each WSH DLL:

  1. UnderHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Services\Winsock\Parameters is a Transports entry of type REG_MULTI_SZ specifying a list of protocols (transport drivers) that each have a corresponding WSH DLL. The names stored in this list match the key names for the corresponding transport drivers under ..\CurrentControlSet\Services.

  2. Under

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\

    TransportDriverName\Parameters for each such transport driver is a

    Winsock

    subkey. Windows Sockets opens this key by forming a name string from the path to its own key under the Services key, the transport name specified in the list under ..\Winsock\Parameters, and the transport's ..\Parameters\Winsock key, which contains the following value entries:

    • HelperDllName-- a REG_EXPAND_SZ value that specifies the path to the WSH DLL itself.
    • Mapping-- a REG_BINARY value that describes the address family, socket type, and protocol parameter triples supported by the WSH DLL. The format for this binary data is the WINSOCK_MAPPING structure, as defined in wsahelp.h.
    • MinSockaddrLength-- a REG_DWORD value that specifies the smallest valid SOCKADDR size, in bytes, for the WSH DLL.
    • MaxSockaddrLength-- a REG_DWORD value that specifies the largest valid SOCKADDR size, in bytes, for the WSH DLL.
    • UseDelayedAcceptance-- a REG_DWORD value that specifies whether the underlying transport driver supports conditional acceptance (which is also known as delayed acceptance) of connection requests. If this value is present and is >= zero, the underlying transport driver supports delayed acceptance. If this value is < zero or is not present, the underlying transport driver does not support delayed acceptance.

Storing this information in two distinct places under ..\CurrentControlSet\Services helps to localize information about a transport driver under that driver's own Parameterskey. The information under ..\Services\Winsock\Parameters provides a pointer to the actual information for each transport's WSH DLL, allowing setup programs to interoperate more easily.

A Winsock-install section in a transport driver's INF file sets up WSH DLL registry information. For more information about Winsock-install sections, see Winsock Sections in a Network INF File. For an example of a Winsock-install section, see Nettcpip.inf, which is located in the C:\Windows\inf directory.

 

 

Send comments about this topic to Microsoft