Export (0) Print
Expand All
3 out of 4 rated this helpful - Rate this topic

WNetEnumResource function

The WNetEnumResource function continues an enumeration of network resources that was started by a call to the WNetOpenEnum function.

Syntax


DWORD WNetEnumResource(
  _In_     HANDLE hEnum,
  _Inout_  LPDWORD lpcCount,
  _Out_    LPVOID lpBuffer,
  _Inout_  LPDWORD lpBufferSize
);

Parameters

hEnum [in]

Handle that identifies an enumeration instance. This handle must be returned by the WNetOpenEnum function.

lpcCount [in, out]

Pointer to a variable specifying the number of entries requested. If the number requested is –1, the function returns as many entries as possible.

If the function succeeds, on return the variable pointed to by this parameter contains the number of entries actually read.

lpBuffer [out]

Pointer to the buffer that receives the enumeration results. The results are returned as an array of NETRESOURCE structures. Note that the buffer you allocate must be large enough to hold the structures, plus the strings to which their members point. For more information, see the following Remarks section.

The buffer is valid until the next call using the handle specified by the hEnum parameter. The order of NETRESOURCE structures in the array is not predictable.

lpBufferSize [in, out]

Pointer to a variable that specifies the size of the lpBuffer parameter, in bytes. If the buffer is too small to receive even one entry, this parameter receives the required size of the buffer.

Return value

If the function succeeds, the return value is one of the following values.

Return codeDescription
NO_ERROR

The enumeration succeeded, and the buffer contains the requested data. The calling application can continue to call WNetEnumResource to complete the enumeration.

ERROR_NO_MORE_ITEMS

There are no more entries. The buffer contents are undefined.

 

If the function fails, the return value is a system error code, such as one of the following values.

Return codeDescription
ERROR_MORE_DATA

More entries are available with subsequent calls. For more information, see the following Remarks section.

ERROR_INVALID_HANDLE

The handle specified by the hEnum parameter is not valid.

ERROR_NO_NETWORK

The network is unavailable. (This condition is tested before hEnum is tested for validity.)

ERROR_EXTENDED_ERROR

A network-specific error occurred. To obtain a description of the error, call the WNetGetLastError function.

 

Remarks

The WNetEnumResource function does not enumerate users connected to a share; you can call the NetConnectionEnum function to accomplish this task. To enumerate hidden shares, call the NetShareEnum function.

An application cannot set the lpBuffer parameter to NULL and retrieve the required buffer size from the lpBufferSize parameter. Instead, the application should allocate a buffer of a reasonable size—16 kilobytes is typical—and use the value of lpBufferSize for error detection.

Examples

For a code sample that illustrates an application-defined function that enumerates all the resources on a network, see Enumerating Network Resources.

Requirements

Minimum supported client

Windows 2000 Professional [desktop apps only]

Minimum supported server

Windows 2000 Server [desktop apps only]

Header

Winnetwk.h

Library

Mpr.lib

DLL

Mpr.dll

Unicode and ANSI names

WNetEnumResourceW (Unicode) and WNetEnumResourceA (ANSI)

See also

Windows Networking (WNet) Overview
Windows Networking Functions
NETRESOURCE
WNetCloseEnum
WNetOpenEnum

 

 

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.