WNetGetResourceInformationW-Funktion (winnetwk.h)
Wenn sie mit einem Remotepfad zu einer Netzwerkressource bereitgestellt wird, identifiziert die WNetGetResourceInformation-Funktion den Netzwerkanbieter, der die Ressource besitzt, und ruft Informationen zum Typ der Ressource ab. Die Funktion wird in der Regel in Verbindung mit der WNetGetResourceParent-Funktion verwendet, um einen von einem Benutzer eingegebenen Netzwerkpfad zu analysieren und zu interpretieren.
Syntax
DWORD WNetGetResourceInformationW(
[in] LPNETRESOURCEW lpNetResource,
[out] LPVOID lpBuffer,
[in, out] LPDWORD lpcbBuffer,
[out] LPWSTR *lplpSystem
);
Parameter
[in] lpNetResource
Zeiger auf eine NETRESOURCE-Struktur , die die Netzwerkressource angibt, für die Informationen erforderlich sind.
Das lpRemoteName-Element der Struktur sollte den Remotepfadnamen der Ressource angeben, in der Regel einer, der von einem Benutzer eingegeben wird. Die Elemente lpProvider und dwType sollten auch ausgefüllt werden, sofern bekannt, da dieser Vorgang speicherintensiv sein kann, insbesondere, wenn Sie den dwType-Member nicht angeben. Wenn Sie die Werte für diese Member nicht kennen, sollten Sie sie auf NULL festlegen. Alle anderen Elemente der NETRESOURCE-Struktur werden ignoriert.
[out] lpBuffer
Zeiger auf den Puffer, um das Ergebnis zu empfangen. Bei erfolgreicher Rückgabe ist der erste Teil des Puffers eine NETRESOURCE-Struktur , die den Teil des Eingaberessourcenpfads darstellt, auf den über die WNet-Funktionen zugegriffen wird, anstatt über Systemfunktionen, die für den Eingaberessourcentyp spezifisch sind. (Der Rest des Puffers enthält die Zeichenfolgen mit variabler Länge, auf die die Member des NETRESOURCE-Strukturpunkts verweisen.)
Wenn der Eingabe-Remoteressourcenpfad beispielsweise \server\share\dir1\dir2 lautet, enthält die NETRESOURCE-Ausgabestruktur Informationen zur Ressource \server\share. Auf den Teil \dir1\dir2 des Pfads wird über die Dateiverwaltungsfunktionen zugegriffen. Die Elemente lpRemoteName, lpProvider, dwType, dwDisplayType und dwUsage von NETRESOURCE werden zurückgegeben, wobei alle anderen Member auf NULL festgelegt sind.
Das lpRemoteName-Element wird in derselben Syntax zurückgegeben wie das Element, das von einer Enumeration von der WNetEnumResource-Funktion zurückgegeben wird. Dadurch kann der Aufrufer einen Zeichenfolgenvergleich durchführen, um zu bestimmen, ob die an WNetGetResourceInformation übergebene Ressource mit der Ressource identisch ist, die von einem separaten Aufruf von WNetEnumResource zurückgegeben wird.
[in, out] lpcbBuffer
Zeiger auf einen Speicherort, der beim Eintrag die Größe des lpBuffer-Puffers in Bytes angibt. Der Puffer, den Sie zuweisen, muss groß genug sein, um die NETRESOURCE-Struktur und die Zeichenfolgen zu enthalten, auf die die Member verweisen. Wenn der Puffer für das Ergebnis zu klein ist, empfängt dieser Speicherort die erforderliche Puffergröße, und die Funktion gibt ERROR_MORE_DATA zurück.
[out] lplpSystem
Wenn die Funktion erfolgreich zurückgegeben wird, verweist dieser Parameter auf eine Zeichenfolge im Ausgabepuffer, die den Teil der Ressource angibt, auf den über Systemfunktionen zugegriffen wird. (Dies gilt nur für funktionen, die für den Ressourcentyp und nicht für die WNet-Funktionen spezifisch sind.)
Wenn der Name der Eingabe-Remoteressource beispielsweise \server\share\dir1\dir2 lautet, verweist das lpRemoteName-Mitglied der Ausgabestruktur NETRESOURCE auf \server\share. Außerdem zeigt der parameter lplpSystem auf \dir1\dir2. Beide Zeichenfolgen werden im Puffer gespeichert, auf den der lpBuffer-Parameter verweist.
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 |
---|---|
|
Das Eingabeelement lpRemoteName ist keine vorhandene Netzwerkressource für ein Netzwerk. |
|
Das dwType-Element stimmt nicht mit dem Ressourcentyp überein, der vom lpRemoteName-Element angegeben wird. |
|
Es ist ein netzwerkspezifischer Fehler aufgetreten. Rufen Sie WNetGetLastError auf, um eine Beschreibung des Fehlers zu erhalten. |
|
Der Puffer, auf den der lpBuffer-Parameter verweist, ist zu klein. |
|
Das Netzwerk ist nicht verfügbar. |
Hinweise
Hinweis
Der winnetwk.h-Header definiert WNetGetResourceInformation als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code 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
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für