Condividi tramite


Funzione WNetGetResourceParentA (winnetwk.h)

La funzione WNetGetResourceParent restituisce l'elemento padre di una risorsa di rete nella gerarchia di esplorazione di rete. L'esplorazione inizia nella posizione della risorsa di rete specificata.

Chiamare il WNetGetResourceInformation e funzioni WNetGetResourceParent per spostarsi verso l'alto nella gerarchia di rete. Chiamare la funzione WNetOpenEnum per spostarsi verso il basso nella gerarchia.

Sintassi

DWORD WNetGetResourceParentA(
  [in]      LPNETRESOURCEA lpNetResource,
  [out]     LPVOID         lpBuffer,
  [in, out] LPDWORD        lpcbBuffer
);

Parametri

[in] lpNetResource

Puntatore a una struttura NETRESOURCE che specifica la risorsa di rete per cui è necessario il nome padre.

Specificare i membri della struttura di input NETRESOURCE come indicato di seguito. Il chiamante conosce in genere i valori da fornire per i membri lpProvider e dw Type dopo le precedenti chiamate a WNetGetResourceInformation o WNetGetResourceParent.

Membro Significato
dwType
Questo membro deve essere compilato se noto; in caso contrario, deve essere impostato su NULL.
lpRemoteName
Questo membro deve specificare il nome remoto della risorsa di rete il cui elemento padre è obbligatorio.
lpProvider
Questo membro deve specificare il provider di rete proprietario della risorsa. Questo membro è obbligatorio; in caso contrario, la funzione potrebbe produrre risultati non corretti.
 

Tutti gli altri membri della struttura NETRESOURCE vengono ignorati.

[out] lpBuffer

Puntatore a un buffer per ricevere una singola struttura NETRESOURCE che rappresenta la risorsa padre. La funzione restituisce il lpRemoteName, lpProvider, dwType, dwDisplayTypee membri della struttura; tutti gli altri membri sono impostati su NULL.

Il lpRemoteName membro punta al nome remoto per la risorsa padre. Questo nome usa la stessa sintassi di quella restituita da un'enumerazione dalla funzione WNetEnumResource. Il chiamante può eseguire un confronto tra stringhe per determinare se la risorsa WNetGetResourceParent è uguale a quella restituita da WNetEnumResource. Se la risorsa di input non ha alcun elemento padre in alcuna delle reti, il membro lpRemoteName viene restituito come NULL.

La presenza del bit di RESOURCEUSAGE_CONNECTABLE nel membro dwUsage indica che è possibile connettersi alla risorsa padre, ma solo quando è disponibile nella rete.

[in, out] lpcbBuffer

Puntatore a una posizione in cui, in ingresso, specifica le dimensioni del buffer lpBuffer in byte. Se il buffer è troppo piccolo per contenere il risultato, questa posizione riceve le dimensioni del buffer necessarie e la funzione restituisce ERROR_MORE_DATA.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è NO_ERROR.

Se la funzione ha esito negativo, il valore restituito è un codice di errore di sistema , ad esempio uno dei valori seguenti.

Codice restituito Descrizione
ERROR_ACCESS_DENIED
Il chiamante non ha accesso alla risorsa di rete.
ERROR_BAD_NET_NAME
L'input membro lpRemoteName non è una risorsa di rete esistente per alcuna rete.
ERROR_BAD_PROVIDER
L'input membro lpProvider non corrisponde ad alcun provider di rete installato.
ERROR_MORE_DATA
Il buffer a cui punta il parametro lpBuffer è troppo piccolo.
ERROR_NOT_AUTHENTICATED
Il chiamante non dispone delle autorizzazioni necessarie per ottenere il nome dell'elemento padre.

Osservazioni

La funzione WNetGetResourceParent viene in genere usata insieme alla funzione WNetGetResourceInformation per analizzare e interpretare un percorso di rete digitato da un utente.

A differenza della funzione WNetGetResourceInformation , se la risorsa include un elemento padre nella sintassi, la funzione WNetGetResourceParent restituisce l'elemento padre, indipendentemente dal fatto che la risorsa esista effettivamente. WNetGetResourceParent deve essere in genere usato solo dalle applicazioni che visualizzano le risorse di rete all'utente in modo gerarchico. Esplora risorse e finestra di dialogo Apri file sono due esempi noti di questo tipo di applicazione. Si noti che non devono essere effettuate ipotesi sul tipo di risorsa che verrà restituito.

È possibile chiamare WNetEnumResource, WNetGetResourceInformationo funzione WNetGetResourceParent per restituire informazioni dalla struttura NETRESOURCE . È anche possibile costruire informazioni sulle risorse di rete usando i membri della struttura di NETRESOURCE.

Un esempio di utilizzo inappropriato di WNetGetResourceParent consiste nel determinare il nome del dominio a cui appartiene un server specificato. La funzione può verificarsi per restituire il nome di dominio corretto per alcune reti in cui i domini vengono visualizzati direttamente sopra i server nella gerarchia di esplorazione. La funzione restituirà risultati non corretti per altre reti.

Nota

L'intestazione winnetwk.h definisce WNetGetResourceParent come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows 2000 Professional [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
piattaforma di destinazione Finestre
intestazione winnetwk.h
libreria Mpr.lib
dll Mpr.dll

Vedere anche

WNetGetNetworkInformation

WNetGetProviderName

WNetGetResourceInformation

WNetGetUniversalName

Panoramica rete Windows

Funzioni di rete di Windows