Freigeben über


NPOpenEnum-Funktion (npapi.h)

Öffnet eine Aufzählung von Netzwerkressourcen oder vorhandenen Verbindungen. Die NPOpenEnum-Funktion muss aufgerufen werden, um ein gültiges Handle für eine Enumeration abzurufen.

Syntax

DWORD NPOpenEnum(
  [in]  DWORD          dwScope,
  [in]  DWORD          dwType,
  [in]  DWORD          dwUsage,
  [in]  LPNETRESOURCEW lpNetResource,
  [out] LPHANDLE       lphEnum
);

Die Parameter

[in] dwScope

Bestimmt den Bereich der Enumeration. Dies kann eine der folgenden Sein:

Wert Bedeutung
RESOURCE_CONNECTED
Alle aktuell verbundenen Ressourcen.
RESOURCE_GLOBALNET
Alle Ressourcen im Netzwerk.
RESOURCE_CONTEXT
Die Ressourcen, die dem aktuellen und dem Standardnetzwerkkontext des Benutzers zugeordnet sind (wird für eine Ansicht "Netzwerkviertel" verwendet). Die Auslegung ders bleibt dem Anbieter überlassen.

[in] dwType

Gibt den Typ der interessanten Ressourcen an. Dies ist eine Bitmaske, die eine beliebige Kombination der folgenden Flags sein kann.

Wert Bedeutung
RESOURCETYPE_DISK
Alle Datenträgerressourcen.
RESOURCETYPE_PRINT
Alle Druckressourcen.
RESOURCEUSAGE_ATTACHED
Gibt an, dass die Funktion fehlschlagen soll, wenn der Aufrufer nicht authentifiziert ist (auch wenn das Netzwerk die Enumeration ohne Authentifizierung zulässt).
 

Wenn dwType 0 ist oder nur RESOURCEUSAGE_ATTACHED ist, werden alle Ressourcentypen zurückgegeben. Wenn ein Anbieter nicht über die Möglichkeit verfügt, zwischen Druck- und Datenträgerressourcen auf derselben Ebene zu unterscheiden, gibt er möglicherweise alle Ressourcen zurück.

[in] dwUsage

Gibt die Verwendung von interessierten Ressourcen an. Dies ist eine Bitmaske, die eine beliebige Kombination der folgenden Flags sein kann.

Wert Bedeutung
RESOURCEUSAGE_CONNECTABLE
Alle verbindungsfähigen Ressourcen
RESOURCEUSAGE_CONTAINER
Alle Containerressourcen
 

Die Bitmaske kann null sein, um mit allen Flags übereinzugleichen. Dieser Parameter kann ignoriert werden, wenn dwScope nicht auf RESOURCE_GLOBALNET festgelegt ist.

[in] lpNetResource

Zeigen Sie auf den Container, um die Enumeration auszuführen. Die NETRESOURCE konnte über einen vorherigen NPEnumResource-Aufruf abgerufen oder vom Aufrufer erstellt oder NULL sein. Wenn es NULL ist oder das lpRemoteName-Feld der NETRESOURCENULL ist, sollte der Anbieter die oberste Ebene des Netzwerks aufzählen. Beachten Sie, dass ein Anbieter keinen lpRemoteName von NULL verwenden kann, um eine Netzwerkressource darzustellen. Ein Aufrufer würde normalerweise beginnen, indem npOpenEnum mit diesem Parameter auf NULL festgelegt wird, und dann die zurückgegebenen Ergebnisse für die weitere Enumeration verwenden. Wenn das aufrufende Programm genau den Anbieter und den Remotepfad zum Aufzählen kennt, kann es eine eigene NETRESOURCE-Struktur erstellen, die übergeben werden soll, indem er die Felder "lpProvider " und "lpRemoteName " ausfüllt. Wenn dwScope RESOURCE_CONNECTED oder RESOURCE_CONTEXT ist, ist dieser Parameter NULL.

[out] lphEnum

Zeiger auf ein Handle, das von der NPEnumResource-Funktion verwendet werden kann. Wenn Sie mit der Verwendung des Handles fertig sind, lassen Sie das Handle los, indem Sie die NPCloseEnum-Funktion aufrufen.

Rückgabewert

Wenn die Funktion erfolgreich ist, sollte sie WN_SUCCESS zurückgeben. Andernfalls sollte ein Fehlercode zurückgegeben werden, der eine der folgenden Elemente enthalten kann.

Rückgabecode Description
WN_NOT_SUPPORTED
Der Anbieter unterstützt nicht den angeforderten Enumerationstyp, oder die spezifische Netzwerkressource kann nicht durchsucht werden.
WN_NOT_CONTAINER
lpNetResource verweist nicht auf einen Container.
WN_BAD_VALUE
Ungültige dwScope-, dwUsage- oder dwType- oder ungültige Kombination von Parametern wird angegeben.
WN_NO_NETWORK
Das Netzwerk ist nicht vorhanden.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows XP [nur Desktop-Apps]
Mindestanforderungen für unterstützte Server Windows Server 2003 [Nur Desktop-Apps]
Zielplattform Fenster
Header npapi.h
Library davclnt.lib