Compartir a través de


Función WNetOpenEnumA (winnetwk.h)

La función WNetOpenEnum inicia una enumeración de recursos de red o conexiones existentes. Puede continuar la enumeración llamando a la función WNetEnumResource .

Sintaxis

DWORD WNetOpenEnumA(
  [in]  DWORD          dwScope,
  [in]  DWORD          dwType,
  [in]  DWORD          dwUsage,
  [in]  LPNETRESOURCEA lpNetResource,
  [out] LPHANDLE       lphEnum
);

Parámetros

[in] dwScope

Ámbito de la enumeración. Este parámetro puede ser uno de los valores siguientes.

Valor Significado
RESOURCE_CONNECTED
Enumerar todos los recursos conectados actualmente. La función omite el parámetro dwUsage . Para obtener más información, vea la sección Comentarios que se muestra más adelante.
RESOURCE_CONTEXT
Enumere solo los recursos en el contexto de red del autor de la llamada. Especifique este valor para una vista De vecindario de red. La función omite el parámetro dwUsage .
RESOURCE_GLOBALNET
Enumerar todos los recursos de la red.
RESOURCE_REMEMBERED
Enumerar todas las conexiones recordadas (persistentes). La función omite el parámetro dwUsage .

[in] dwType

Tipos de recursos que se van a enumerar. Este parámetro puede ser una combinación de los valores siguientes.

Value Significado
RESOURCETYPE_ANY
Todos los recursos. Este valor no se puede combinar con RESOURCETYPE_DISK o RESOURCETYPE_PRINT.
RESOURCETYPE_DISK
Todos los recursos de disco.
RESOURCETYPE_PRINT
Todos los recursos de impresión.
 

Si un proveedor de red no puede distinguir entre los recursos de impresión y disco, puede enumerar todos los recursos.

[in] dwUsage

Tipo de uso de recursos que se va a enumerar. Este parámetro puede ser una combinación de los valores siguientes.

Value Significado
0
Todos los recursos.
RESOURCEUSAGE_CONNECTABLE
Todos los recursos conectables.
RESOURCEUSAGE_CONTAINER
Todos los recursos de contenedor.
RESOURCEUSAGE_ATTACHED
Si se establece este valor, WNetOpenEnum producirá un error si el usuario no está autenticado. La función produce un error incluso si la red permite la enumeración sin autenticación.
RESOURCEUSAGE_ALL
Establecer este valor equivale a establecer RESOURCEUSAGE_CONNECTABLE, RESOURCEUSAGE_CONTAINER y RESOURCEUSAGE_ATTACHED.
 

Este parámetro se omite a menos que el parámetro dwScope sea igual a RESOURCE_GLOBALNET. Para obtener más información, vea la sección Comentarios que se muestra más adelante.

[in] lpNetResource

Puntero a una estructura NETRESOURCE que especifica el contenedor que se va a enumerar. Si el parámetro dwScope no está RESOURCE_GLOBALNET, este parámetro debe ser NULL.

Si este parámetro es NULL, se asume la raíz de la red. (El sistema organiza una red como una jerarquía; la raíz es el contenedor más alto de la red).

Si este parámetro no es NULL, debe apuntar a una estructura NETRESOURCE . La aplicación puede rellenar esta estructura o se puede devolver mediante una llamada a la función WNetEnumResource . La estructura NETRESOURCE debe especificar un recurso de contenedor; es decir, el valor RESOURCEUSAGE_CONTAINER debe especificarse en el parámetro dwUsage .

Para enumerar todos los recursos de red, una aplicación puede comenzar la enumeración llamando a WNetOpenEnum con el parámetro lpNetResource establecido en NULL y, a continuación, use el identificador devuelto para llamar a WNetEnumResource para enumerar los recursos. Si uno de los recursos de la matriz NETRESOURCE devuelto por la función WNetEnumResource es un recurso de contenedor, puede llamar a WNetOpenEnum para abrir el recurso para su enumeración adicional.

[out] lphEnum

Puntero a un identificador de enumeración que se puede usar en una llamada posterior a WNetEnumResource.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es NO_ERROR.

Si se produce un error en la función, el valor devuelto es un código de error del sistema, como uno de los valores siguientes.

Código devuelto Descripción
ERROR_NOT_CONTAINER
El parámetro lpNetResource no apunta a un contenedor.
ERROR_INVALID_PARAMETER
El parámetro dwScope o dwType no es válido o hay una combinación no válida de parámetros.
ERROR_NO_NETWORK
La red no está disponible.
ERROR_EXTENDED_ERROR
Error específico de la red. Para obtener una descripción del error, llame a la función WNetGetLastError .
ERROR_INVALID_ADDRESS
Nombre de recurso de red remoto proporcionado en la estructura NETRESOURCE resuelto en una dirección de red no válida.

Comentarios

Si el parámetro dwScope es igual a RESOURCE_CONNECTED, se omite una conexión de red realizada mediante la red de Microsoft LAN Manager de la enumeración si una aplicación que se ejecuta en una sesión de inicio de sesión diferente que la aplicación que llama a la función WNetOpenEnum . Esto se debe a que las conexiones realizadas mediante Microsoft LAN Manager solo son visibles para las aplicaciones que se ejecutan en la misma sesión de inicio de sesión que la aplicación que realizó la conexión. (Para incluir la conexión en la enumeración, no es suficiente para que la aplicación se ejecute en la cuenta de usuario que creó la conexión).

La interpretación exacta de RESOURCE_CONTEXT en el parámetro dwScope depende de las redes instaladas en la máquina.

La función WNetOpenEnum se usa para comenzar la enumeración de los recursos en un único contenedor. Los ejemplos siguientes muestran la estructura jerárquica de una red de Microsoft LAN Manager y una red Novell NetWare e identifican los contenedores.

LanMan (container, in this case the provider) 
  ACCOUNTING (container, in this case the domain) 
    \\ACCTSPAY (container, in this case the server) 
      PAYFILES (disk) 
      LASERJET (print) 
 
NetWare (container, in this case the provider) 
  MARKETING (container, in this case the server) 
    SYS (disk, first one on any NetWare server) 
    ANOTHERVOLUME (disk) 
    LASERJET (print) 

Ejemplos

Para obtener un ejemplo de código que muestra una función definida por la aplicación que enumera todos los recursos de una red, consulte Enumeración de recursos de red.

Nota

El encabezado winnetwk.h define WNetOpenEnum como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winnetwk.h
Library Mpr.lib
Archivo DLL Mpr.dll

Consulte también

NETRESOURCE

WNetCloseEnum

WNetEnumResource

Información general sobre redes de Windows (WNet)

Funciones de redes de Windows