Microsoft KB Archive/119216

{|
 * width="100%"|

HOWTO: Enumerate Network Connections

 * }

Q119216

-

The information in this article applies to:


 * Microsoft Win32 Software Development Kit (SDK), versions 3.1, 3.5, 3.51, 4.0

-

SUMMARY
From the MS-DOS prompt, you can enumerate the network connections (drives) by using the following command:

"net use" Programmatically, you would call WNetOpenEnum to start the enumeration of connected resources and WNetEnumResources to continue the enumeration.

MORE INFORMATION
The following sample code enumerates the network connections.

NOTE: You must link with mpr.lib for the linker to resolve the WNet* calls, as mentioned in Microsoft Knowledge Base article

"Q102381 INFO: Location of WNet* API Functions"

Sample Code
  #include    #include 

void main {     DWORD dwResult; HANDLE hEnum; DWORD cbBuffer = 16384; DWORD cEntries = 0xFFFFFFFF; LPNETRESOURCE lpnrDrv; DWORD i;

dwResult = WNetOpenEnum( RESOURCE_CONNECTED,                              RESOURCETYPE_ANY,                               0,                               NULL,                               &hEnum );

if (dwResult != NO_ERROR) {        printf( "\nCannot enumerate network drives.\n" ); return; }

printf( "\nNetwork drives:\n\n" );

do     { lpnrDrv = (LPNETRESOURCE) GlobalAlloc( GPTR, cbBuffer );

dwResult = WNetEnumResource( hEnum, &cEntries, lpnrDrv, &cbBuffer  );

if (dwResult == NO_ERROR) {           for( i = 0; i < cEntries; i++ ) {              if( lpnrDrv[i].lpLocalName != NULL ) {                 printf( "%s\t%s\n", lpnrDrv[i].lpLocalName,                                      lpnrDrv[i].lpRemoteName ); }           }         }         else if( dwResult != ERROR_NO_MORE_ITEMS ) {           printf( "Cannot complete network drive enumeration" ); GlobalFree( (HGLOBAL) lpnrDrv ); break; }        GlobalFree( (HGLOBAL) lpnrDrv ); }     while( dwResult != ERROR_NO_MORE_ITEMS );

WNetCloseEnum(hEnum); } Additional query words:

Keywords : kbnetwork kbAPI kbOSWinNT310 kbOSWinNT350 kbOSWinNT351 kbSDKPlatform kbOSWin95 kbWNet kbGrpDSNet

Issue type :

Technology : kbWin32SDKSearch kbAudDeveloper kbSDKSearch kbWin32sSearch kbWin32SDK400 kbWin32SDK310 kbWin32SDK350 kbWin32SDK351