Funzione NPOpenEnum (npapi.h)

Apre un'enumerazione delle risorse di rete o delle connessioni esistenti. La funzione NPOpenEnum deve essere chiamata per ottenere un handle valido per un'enumerazione.

Sintassi

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

Parametri

[in] dwScope

Determina l'ambito dell'enumerazione. Può trattarsi di una delle opzioni seguenti.

Valore Significato
RESOURCE_CONNECTED
Tutte le risorse attualmente connesse.
RESOURCE_GLOBALNET
Tutte le risorse nella rete.
RESOURCE_CONTEXT
Le risorse associate al contesto di rete corrente e predefinito dell'utente (usate per una visualizzazione "Network Neighborhood"). L'interpretazione di questa operazione viene lasciata al provider.

[in] dwType

Specifica il tipo di risorse di interesse. Si tratta di una maschera di bit, che può essere qualsiasi combinazione dei flag seguenti.

Valore Significato
RESOURCETYPE_DISK
Tutte le risorse del disco.
RESOURCETYPE_PRINT
Tutte le risorse di stampa.
RESOURCEUSAGE_ATTACHED
Specifica che la funzione deve avere esito negativo se il chiamante non è autenticato (anche se la rete consente l'enumerazione senza autenticazione).
 

Se dwType è 0 o è solo RESOURCEUSAGE_ATTACHED, vengono restituiti tutti i tipi di risorse. Se un provider non ha la possibilità di distinguere tra le risorse di stampa e disco allo stesso livello, può restituire tutte le risorse.

[in] dwUsage

Specifica l'utilizzo delle risorse di interesse. Si tratta di una maschera di bit, che può essere qualsiasi combinazione dei flag seguenti.

Valore Significato
RESOURCEUSAGE_CONNECTABLE
Tutte le risorse collegabili
RESOURCEUSAGE_CONTAINER
Tutte le risorse del contenitore
 

La maschera di bit può essere zero in modo che corrisponda a tutti i flag. Questo parametro può essere ignorato se dwScope non è impostato su RESOURCE_GLOBALNET.

[in] lpNetResource

Puntatore al contenitore per eseguire l'enumerazione . NetRESOURCE potrebbe essere stato ottenuto tramite una precedente chiamata NPEnumResource o costruita dal chiamante oppure può essere NULL. Se è NULL o se il campo lpRemoteName di NETRESOURCE è NULL, il provider deve enumerare il livello superiore della rete. Si noti che questo significa che un provider non può usare un lpRemoteNamenull per rappresentare qualsiasi risorsa di rete. Un chiamante inizia normalmente chiamando NPOpenEnum con questo parametro impostato su NULL e quindi usare i risultati restituiti per un'ulteriore enumerazione. Se il programma chiamante conosce esattamente il provider e il percorso remoto da cui enumerare, può creare la propria struttura NETRESOURCE da passare, compilando i campi lpProvider e lpRemoteName . Si noti che se dwScope è RESOURCE_CONNECTED o RESOURCE_CONTEXT, questo parametro sarà NULL.

[out] lphEnum

Puntatore a un handle che può essere usato dalla funzione NPEnumResource . Al termine dell'uso dell'handle, rilasciare l'handle chiamando la funzione NPCloseEnum .

Valore restituito

Se la funzione ha esito positivo, deve restituire WN_SUCCESS. In caso contrario, deve restituire un codice di errore che può includere una delle opzioni seguenti.

Codice restituito Descrizione
WN_NOT_SUPPORTED
Il provider non supporta il tipo di enumerazione richiesta oppure non è possibile esplorare la risorsa di rete specifica.
WN_NOT_CONTAINER
lpNetResource non punta a un contenitore.
WN_BAD_VALUE
Viene specificata una combinazione di parametri dwScope, dwUsage o dwType non valida.
WN_NO_NETWORK
La rete non è presente.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione npapi.h