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 nel percorso della risorsa di rete specificata.

Chiamare le funzioni WNetGetResourceInformation e 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 NETRESOURCE di input come indicato di seguito. Il chiamante conosce in genere i valori da fornire per i membri lpProvider e dwType dopo le chiamate precedenti 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 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 i membri lpRemoteName, lpProvider, dwType, dwDisplayType e dwUsage della struttura; tutti gli altri membri sono impostati su NULL.

Il membro lpRemoteName 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 un elemento padre in alcuna rete, il membro lpRemoteName viene restituito come NULL.

La presenza del bit 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 che, all'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 viene 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
Il membro lpRemoteName di input non è una risorsa di rete esistente per alcuna rete.
ERROR_BAD_PROVIDER
Il membro lpProvider di input 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.

Commenti

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 relativa sintassi, la funzione WNetGetResourceParent restituisce l'elemento padre, indipendentemente dal fatto che la risorsa esista o meno. WNetGetResourceParent deve in genere essere usato solo dalle applicazioni che visualizzano le risorse di rete all'utente in modo gerarchico. Esplora risorse e la 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à restituita.

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

Un esempio di uso 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 che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winnetwk.h
Libreria Mpr.lib
DLL Mpr.dll

Vedi anche

WNetGetNetworkInformation

WNetGetProviderName

WNetGetResourceInformation

WNetGetUniversalName

Panoramica di Windows Networking (WNet)

Funzioni di rete di Windows