Share via


WNetGetResourceParentA-Funktion (winnetwk.h)

Die WNetGetResourceParent-Funktion gibt das übergeordnete Element einer Netzwerkressource in der Netzwerksuchehierarchie zurück. Das Durchsuchen beginnt am Speicherort der angegebenen Netzwerkressource.

Rufen Sie die Funktionen WNetGetResourceInformation und WNetGetResourceParent auf, um die Netzwerkhierarchie nach oben zu verschieben. Rufen Sie die WNetOpenEnum-Funktion auf, um die Hierarchie nach unten zu verschieben.

Syntax

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

Parameter

[in] lpNetResource

Zeiger auf eine NETRESOURCE-Struktur , die die Netzwerkressource angibt, für die der übergeordnete Name erforderlich ist.

Geben Sie die Member der NETRESOURCE-Eingabestruktur wie folgt an. Der Aufrufer kennt in der Regel die Werte, die nach vorherigen Aufrufen von WNetGetResourceInformation oder WNetGetResourceParent für die Elemente lpProvider und dwType bereitgestellt werden sollen.

Mitglied Bedeutung
dwType
Dieses Mitglied sollte ausgefüllt werden, wenn es bekannt ist; Andernfalls sollte er auf NULL festgelegt werden.
lpRemoteName
Dieser Member sollte den Remotenamen der Netzwerkressource angeben, deren übergeordnetes Element erforderlich ist.
lpProvider
Dieser Member sollte den Netzwerkanbieter angeben, der besitzer der Ressource ist. Dieses Mitglied ist erforderlich; Andernfalls könnte die Funktion zu falschen Ergebnissen führen.
 

Alle anderen Member der NETRESOURCE-Struktur werden ignoriert.

[out] lpBuffer

Zeiger auf einen Puffer zum Empfangen einer einzelnen NETRESOURCE-Struktur , die die übergeordnete Ressource darstellt. Die Funktion gibt die Elemente lpRemoteName, lpProvider, dwType, dwDisplayType und dwUsage der -Struktur zurück. alle anderen Member sind auf NULL festgelegt.

Das lpRemoteName-Element verweist auf den Remotenamen für die übergeordnete Ressource. Dieser Name verwendet dieselbe Syntax wie der, der von einer Enumeration von der WNetEnumResource-Funktion zurückgegeben wird. Der Aufrufer kann einen Zeichenfolgenvergleich durchführen, um zu bestimmen, ob die WNetGetResourceParent-Ressource mit der von WNetEnumResource zurückgegebenen Ressource identisch ist. Wenn die Eingaberessource in keinem der Netzwerke über ein übergeordnetes Element verfügt, wird der lpRemoteName-Member als NULL zurückgegeben.

Das Vorhandensein des RESOURCEUSAGE_CONNECTABLE Bits im dwUsage-Element gibt an, dass Sie eine Verbindung mit der übergeordneten Ressource herstellen können, aber nur, wenn sie im Netzwerk verfügbar ist.

[in, out] lpcbBuffer

Zeiger auf einen Speicherort, der beim Eintrag die Größe des lpBuffer-Puffers in Bytes angibt. Wenn der Puffer zu klein ist, um das Ergebnis zu speichern, empfängt dieser Speicherort die erforderliche Puffergröße, und die Funktion gibt ERROR_MORE_DATA zurück.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert NO_ERROR.

Wenn die Funktion fehlschlägt, ist der Rückgabewert ein Systemfehlercode, z. B. einer der folgenden Werte.

Rückgabecode Beschreibung
ERROR_ACCESS_DENIED
Der Aufrufer hat keinen Zugriff auf die Netzwerkressource.
ERROR_BAD_NET_NAME
Das lpRemoteName-Eingabeelement ist keine vorhandene Netzwerkressource für ein Netzwerk.
ERROR_BAD_PROVIDER
Das lpProvider-Element stimmt mit keinem installierten Netzwerkanbieter überein.
ERROR_MORE_DATA
Der Puffer, auf den der lpBuffer-Parameter verweist, ist zu klein.
ERROR_NOT_AUTHENTICATED
Der Aufrufer verfügt nicht über die erforderlichen Berechtigungen, um den Namen des übergeordneten Elements abzurufen.

Hinweise

Die WNetGetResourceParent-Funktion wird in der Regel in Verbindung mit der WNetGetResourceInformation-Funktion verwendet, um einen von einem Benutzer eingegebenen Netzwerkpfad zu analysieren und zu interpretieren.

Im Gegensatz zur WNetGetResourceInformation-Funktion gibt die WNetGetResourceParent-Funktion , wenn die Ressource ein übergeordnetes Element in ihrer Syntax enthält, das übergeordnete Element zurück, unabhängig davon, ob die Ressource tatsächlich vorhanden ist. WNetGetResourceParent sollte in der Regel nur von Anwendungen verwendet werden, die dem Benutzer Netzwerkressourcen hierarchisch anzeigen. Die Windows-Explorer und das Dialogfeld Datei öffnen sind zwei bekannte Beispiele für diesen Anwendungstyp. Beachten Sie, dass keine Annahmen über den Typ der zurückgegebenen Ressource getroffen werden sollten.

Sie können die Funktion WNetEnumResource, WNetGetResourceInformation oder WNetGetResourceParent aufrufen, um Informationen aus der NETRESOURCE-Struktur zurückzugeben. Sie können auch Netzwerkressourceninformationen mithilfe der Elemente der NETRESOURCE-Struktur erstellen.

Ein Beispiel für eine unangemessene Verwendung von WNetGetResourceParent ist die Bestimmung des Namens der Domäne, zu der ein angegebener Server gehört. Die Funktion gibt möglicherweise den richtigen Domänennamen für einige Netzwerke zurück, in denen Domänen direkt über Servern in der Suchhierarchie angezeigt werden. Die Funktion gibt falsche Ergebnisse für andere Netzwerke zurück.

Hinweis

Der winnetwk.h-Header definiert WNetGetResourceParent als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winnetwk.h
Bibliothek Mpr.lib
DLL Mpr.dll

Weitere Informationen

WNetGetNetworkInformation

WNetGetProviderName

WNetGetResourceInformation

WNetGetUniversalName

Übersicht über Windows-Netzwerke (WNet)

Windows-Netzwerkfunktionen