Platform SDK: Windows Networking

MultinetGetConnectionPerformance

The MultinetGetConnectionPerformance function returns information about the expected performance of a connection used to access a network resource. The function returns the information in a NETCONNECTINFOSTRUCT structure.

Note that the MultinetGetConnectionPerformance function can be used only to request information for a local device that is redirected to a network resource, or for a network resource to which there is currently a connection.

DWORD MultinetGetConnectionPerformance(
  LPNETRESOURCE lpNetResource,                   // network resource
  LPNETCONNECTINFOSTRUCT lpNetConnectInfoStruct  // data buffer
);

Parameters

lpNetResource
[in] Pointer to a NETRESOURCE structure that specifies the network resource. The following members have specific meanings in this context.
Member Meaning
lpLocalName Pointer to a buffer that specifies a local device, such as "F:" or "LPT1", that is redirected to a network resource to be queried.

If this member is NULL or an empty string, the network resource is specified in the lpRemoteName member. If this flag specifies a local device, lpRemoteName is ignored.

lpRemoteName Pointer to a network resource to query. The resource must currently have an established connection. For example, if the resource is a file on a file server, then having the file open will ensure the connection.
lpProvider Usually set to NULL, but can be a pointer to the owner (provider) of the resource if the network on which the resource resides is known.

If the lpProvider member is not NULL, the system attempts to return information only about the named network.


lpNetConnectInfoStruct
[out] Pointer to the NETCONNECTINFOSTRUCT structure that receives the data.

Return Values

If the function succeeds, the return value is NO_ERROR.

If the function fails, the return value is one or more of the following error values.

Value Meaning
ERROR_NOT_SUPPORTED The network resource does not supply this information.
ERROR_NOT_CONNECTED The lpLocalName member does not specify a redirected device, or the lpRemoteName member does not specify the name of a resource that is currently connected.
ERROR_NO_NET_OR_BAD_PATH The operation could not be completed, either because a network component is not started, or because the specified resource name is not recognized.
ERROR_BAD_DEVICE The local device specified by the lpLocalName member is invalid.
ERROR_BAD_NET_NAME The resource specified by the lpRemoteName member was not recognized by any network.
ERROR_INVALID_PARAMETER Either the lpNetConnectInfoStruct parameter does not point to a NETCONNECTINFOSTRUCT structure in which the cbStructure member is filled with the structure size, or both the lpLocalName and lpRemoteName members are not specified.
ERROR_NO_NETWORK The network is unavailable.
ERROR_EXTENDED_ERROR A network-specific error occurred. To obtain a description of the error, call WNetGetLastError.

Remarks

The information returned by the MultinetGetConnectionPerformance function is an estimate only. Network traffic and routing can affect the accuracy of the results returned.

A typical way to use this function would be to open a file on a network server (which would ensure that there is a connection to the file), call this function, and use the results to make decisions about how to manage file I/O. For example, you can decide whether to read the entire file into a temporary file on the client or directly access the file on the server.

Requirements

  Windows NT/2000: Requires Windows NT 4.0 or later.
  Windows 95/98: Requires Windows 95 or later.
  Header: Declared in Winnetwk.h.
  Library: Use Mpr.lib.
  Unicode: Implemented as Unicode and ANSI versions on Windows NT/2000.

See Also

Windows Networking (WNet) Overview, Windows Networking Functions, NETCONNECTINFOSTRUCT, NETRESOURCE