WNetGetResourceParentA-Funktion (winnetwk.h)
Die WNetGetResourceParent-Funktion gibt das übergeordnete Element einer Netzwerkressource in der Netzwerkstöberhierarchie zurück. Das Browsen beginnt am Speicherort der angegebenen Netzwerkressource.
Rufen Sie die WNetGetResourceInformation auf, und WNetGetResourceParent Funktionen, 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 Elemente der Eingabe NETRESOURCE- Struktur wie folgt an. Der Aufrufer kennt in der Regel die Werte, die für die lpProvider- und dwType-member nach vorherigen Aufrufen von WNetGetResourceInformation oder WNetGetResourceParentbereitgestellt werden sollen.
Alle anderen Elemente der NETRESOURCE--Struktur werden ignoriert.
[out] lpBuffer
Zeigen Sie auf einen Puffer, um eine einzelne NETRESOURCE- Struktur zu empfangen, die die übergeordnete Ressource darstellt. Die Funktion gibt die lpRemoteName, lpProvider, dwType, dwDisplayTypeund dwUsage Elemente der Struktur zurück; Alle anderen Member werden auf NULL-festgelegt.
Der lpRemoteName Member verweist auf den Remotenamen für die übergeordnete Ressource. Dieser Name verwendet dieselbe Syntax wie die von einer Aufzählung zurückgegebene von der WNetEnumResource-Funktion. Der Aufrufer kann einen Zeichenfolgenvergleich durchführen, um zu bestimmen, ob die WNetGetResourceParent- Ressource mit der von WNetEnumResourcezurückgegebenen Ressource identisch ist. Wenn die Eingaberessource in keinem der Netzwerke über ein übergeordnetes Element verfügt, wird das lpRemoteName Member als NULL-zurückgegeben.
Das Vorhandensein des RESOURCEUSAGE_CONNECTABLE Bits im dwUsage Member 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 eine Position, die beim Eintrag die Größe des lpBuffer- Puffers in Byte 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 |
---|---|
|
Der Aufrufer hat keinen Zugriff auf die Netzwerkressource. |
|
Die Eingabe lpRemoteName Member ist keine vorhandene Netzwerkressource für ein Netzwerk. |
|
Die Eingabe lpProvider Member stimmt nicht mit einem installierten Netzwerkanbieter überein. |
|
Der Puffer, auf den der lpBuffer-Parameter verweist, ist zu klein. |
|
Der Aufrufer verfügt nicht über die erforderlichen Berechtigungen, um den Namen des übergeordneten Elements abzurufen. |
Bemerkungen
Die WNetGetResourceParent-Funktion wird in der Regel in Verbindung mit der WNetGetResourceInformation-Funktion verwendet, um einen vom Benutzer eingegebenen Netzwerkpfad zu analysieren und zu interpretieren.
Im Gegensatz zur funktion WNetGetResourceInformation, wenn die Ressource ein übergeordnetes Element in der Syntax enthält, gibt die WNetGetResourceParent- funktion 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 Netzwerkressourcen für den Benutzer auf hierarchische Weise anzeigen. Der Windows-Explorer und das Dialogfeld "Datei öffnen" sind zwei bekannte Beispiele für diese Art von Anwendung. Beachten Sie, dass keine Annahmen über den Typ der Ressource getroffen werden sollten, die zurückgegeben wird.
Sie können die WNetEnumResource-, WNetGetResourceInformation-oder WNetGetResourceParent-Funktion aufrufen, um Informationen aus der NETRESOURCE--Struktur zurückzugeben. Sie können auch Netzwerkressourceninformationen mithilfe der Member der NETRESOURCE- Struktur erstellen.
Ein Beispiel für eine unangemessene Verwendung von WNetGetResourceParent besteht darin, den Namen der Domäne zu bestimmen, zu der ein angegebener Server gehört. Die Funktion kann vorkommen, dass der richtige Domänenname für einige Netzwerke zurückgegeben wird, in denen Domänen direkt über Servern in der Suchhierarchie angezeigt werden. Die Funktion gibt falsche Ergebnisse für andere Netzwerke zurück.
Anmerkung
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 |
---|---|
mindestens unterstützte Client- | Windows 2000 Professional [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform- | Fenster |
Header- | winnetwk.h |
Library | Mpr.lib |
DLL- | Mpr.dll |
Siehe auch
übersicht über Windows Networking (WNet)