Platform SDK: Windows Sockets

WPUGetProviderPath

The WPUGetProviderPath function retrieves the DLL path for the specified provider.

int WPUGetProviderPath (
  LPGUID    lpProviderId,          
  LPWSTR    lpszProviderDllPath,   
  LPINT     lpProviderDllPathLen,   
  LPINT     lpErrno                 
);

Parameters

lpProviderId
[in] Locally unique identifier of the provider. This must be a value obtained by using WSCEnumProtocols.
lpszProviderDllPath
[out] Pointer to a buffer containing a string that identifies the provider DLL's path. This path is a null-terminated string and any embedded environment strings (such as %SystemRoot%) have not been expanded.
lpProviderDllPathLen
[in/out] Size of the buffer pointed to by lpszProviderDllPath.
lpErrno
[out] Pointer to the error code.

Return Values

If no error occurs, WPUGetProviderPath returns zero. Otherwise, it returns SOCKET_ERROR, and a specific error code is available in lpErrno.

Remarks

The WPUGetProviderPath function retrieves the DLL path for the specified provider. The DLL path is null-terminated and can contain embedded environment strings (such as %SystemRoot%). Thus, the string should be expanded prior to being used with LoadLibrary. For more information, see LoadLibrary.

Error Codes

Error code Meaning
WSAEINVAL The lpProviderId does not specify a valid provider.
WSAEFAULT Either lpszProviderDllPath or lpErrno is not in a valid part of the user address space, or lpProviderDllPathLen is too small.

Requirements

  Version: Requires Windows Sockets 2.0.
  Header: Declared in Ws2spi.h.

See Also

WSCInstallProvider, WSCEnumProtocols