Função NPOpenEnum (npapi.h)

Abre uma enumeração de recursos de rede ou conexões existentes. A função NPOpenEnum deve ser chamada para obter um identificador válido para uma enumeração.

Sintaxe

DWORD NPOpenEnum(
  [in]  DWORD          dwScope,
  [in]  DWORD          dwType,
  [in]  DWORD          dwUsage,
  [in]  LPNETRESOURCEW lpNetResource,
  [out] LPHANDLE       lphEnum
);

Parâmetros

[in] dwScope

Determina o escopo da enumeração. Isso pode ser um dos seguintes.

Valor Significado
RESOURCE_CONNECTED
Todos os recursos conectados no momento.
RESOURCE_GLOBALNET
Todos os recursos na rede.
RESOURCE_CONTEXT
Os recursos associados ao contexto de rede atual e padrão do usuário (usados para uma exibição "Bairro de Rede"). A interpretação disso é deixada para o provedor.

[in] dwType

Especifica o tipo de recursos de interesse. Essa é uma máscara de bits, que pode ser qualquer combinação dos sinalizadores a seguir.

Valor Significado
RESOURCETYPE_DISK
Todos os recursos de disco.
RESOURCETYPE_PRINT
Todos os recursos de impressão.
RESOURCEUSAGE_ATTACHED
Especifica que a função deve falhar se o chamador não for autenticado (mesmo que a rede permita a enumeração sem autenticação).
 

Se dwType for 0 ou for apenas RESOURCEUSAGE_ATTACHED, todos os tipos de recursos serão retornados. Se um provedor não tiver a capacidade de distinguir entre recursos de impressão e disco no mesmo nível, ele poderá retornar todos os recursos.

[in] dwUsage

Especifica o uso de recursos de interessados. Essa é uma máscara de bits, que pode ser qualquer combinação dos sinalizadores a seguir.

Valor Significado
RESOURCEUSAGE_CONNECTABLE
Todos os recursos conectáveis
RESOURCEUSAGE_CONTAINER
Todos os recursos de contêiner
 

A máscara de bits pode ser zero para corresponder a todos os sinalizadores. Esse parâmetro poderá ser ignorado se dwScope não estiver definido como RESOURCE_GLOBALNET.

[in] lpNetResource

Ponteiro para o contêiner para executar a enumeração. O NETRESOURCE poderia ter sido obtido por meio de uma chamada NPEnumResource anterior, ou construído pelo chamador, ou pode ser NULL. Se for NULL ou se o campo lpRemoteName do NETRESOURCE for NULL, o provedor deverá enumerar o nível superior de sua rede. Observe que isso significa que um provedor não pode usar um lpRemoteName de NULL para representar qualquer recurso de rede. Um chamador normalmente começa chamando NPOpenEnum com esse parâmetro definido como NULL e, em seguida, usa os resultados retornados para enumeração adicional. Se o programa de chamada souber exatamente o provedor e o caminho remoto do qual enumerar, ele poderá criar sua própria estrutura NETRESOURCE para passar, preenchendo os campos lpProvider e lpRemoteName . Observe que, se dwScope for RESOURCE_CONNECTED ou RESOURCE_CONTEXT, esse parâmetro será NULL.

[out] lphEnum

Ponteiro para um identificador que pode ser usado pela função NPEnumResource . Quando terminar de usar o identificador, libere o identificador chamando a função NPCloseEnum .

Retornar valor

Se a função for bem-sucedida, ela deverá retornar WN_SUCCESS. Caso contrário, ele deverá retornar um código de erro que pode incluir um dos seguintes.

Código de retorno Descrição
WN_NOT_SUPPORTED
O provedor não dá suporte ao tipo de enumeração que está sendo solicitado ou o recurso de rede específico não pode ser navegado.
WN_NOT_CONTAINER
lpNetResource não aponta para um contêiner.
WN_BAD_VALUE
DwScope inválido, dwUsage ou dwType ou combinação incorreta de parâmetros é especificado.
WN_NO_NETWORK
A rede não está presente.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho npapi.h