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.
[in] dwType
Tipos de recursos que se van a enumerar. Este parámetro puede ser una combinación de los valores siguientes.
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.
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 |
---|---|
|
El parámetro lpNetResource no apunta a un contenedor. |
|
El parámetro dwScope o dwType no es válido o hay una combinación no válida de parámetros. |
|
La red no está disponible. |
|
Error específico de la red. Para obtener una descripción del error, llame a la función WNetGetLastError . |
|
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 |