Freigeben über


WSAEnumNameSpaceProvidersExA-Funktion (winsock2.h)

Die WSAEnumNameSpaceProvidersEx-Funktion ruft Informationen zu verfügbaren Namespaceanbietern ab.

Syntax

INT WSAAPI WSAEnumNameSpaceProvidersExA(
  [in, out] LPDWORD                lpdwBufferLength,
  [out]     LPWSANAMESPACE_INFOEXA lpnspBuffer
);

Parameter

[in, out] lpdwBufferLength

Bei der Eingabe die Anzahl der Bytes, die im Puffer enthalten sind, auf die lpnspBuffer verweist. Bei der Ausgabe (wenn die Funktion fehlschlägt und der Fehler WSAEFAULT ist), die Mindestanzahl von Bytes, die für den lpnspBuffer-Puffer zugewiesen werden sollen, damit alle angeforderten Informationen abgerufen werden können. Der an WSAEnumNameSpaceProvidersEx übergebene Puffer muss ausreichen, um alle Namespaceinformationen zu enthalten.

[out] lpnspBuffer

Ein Puffer, der mit WSANAMESPACE_INFOEX Strukturen gefüllt ist. Die zurückgegebenen Strukturen befinden sich nacheinander am Kopf des Puffers. Informationen zu variablen Größen, auf die von Zeigern in den Strukturen verwiesen wird, verweisen auf Positionen innerhalb des Puffers, die sich zwischen dem Ende der Strukturen mit fester Größe und dem Ende des Puffers befinden. Die Anzahl der eingegebenen Strukturen ist der Rückgabewert von WSAEnumNameSpaceProvidersEx.

Rückgabewert

Die WSAEnumNameSpaceProvidersEx-Funktion gibt die Anzahl der WSANAMESPACE_INFOEX Strukturen zurück, die in lpnspBuffer kopiert wurden. Andernfalls wird der Wert SOCKET_ERROR zurückgegeben, und eine bestimmte Fehlernummer kann durch Aufrufen von WSAGetLastError abgerufen werden.

Fehlercode Bedeutung
WSAEFAULT
Der lpnspBuffer-Parameter war ein NULL-Zeiger oder die Pufferlänge lpdwBufferLength war zu klein, um alle relevanten WSANAMESPACE_INFOEX Strukturen und zugeordneten Informationen zu empfangen. Wenn dieser Fehler zurückgegeben wird, wird die erforderliche Pufferlänge im parameter lpdwBufferLength zurückgegeben.
WSANOTINITIALISIERT
Die WS2_32.DLL wurde nicht initialisiert. Die Anwendung muss zuerst WSAStartup aufrufen, bevor sie Windows Sockets-Funktionen aufruft.
WSA_NOT_ENOUGH_MEMORY
Zum Ausführen des Vorgangs war nicht genügend Arbeitsspeicher vorhanden.

Hinweise

Die WSAEnumNameSpaceProvidersEx-Funktion ist eine erweiterte Version der WSAEnumNameSpaceProviders-Funktion . Das anbieterspezifische Datenblob, das dem Namespaceeintrag zugeordnet ist, der im lpProviderInfo-Parameter an die WSCInstallNameSpaceEx-Funktion übergeben wird, kann mithilfe der WSAEnumNameSpaceProvidersEx-Funktion abgefragt werden.

Derzeit ist der einzige in Windows enthaltene Namespaceanbieter, der Informationen im ProviderSpecific-Member der WSANAMESPACE_INFOEX-Struktur festlegt, der NS_EMAIL Anbieter. Das Format des ProviderSpecific-Members für einen NS_EMAIL Namespaceanbieter ist eine NAPI_PROVIDER_INSTALLATION_BLOB-Struktur .

Wenn UNICODE oder _UNICODE definiert ist, wird WSAEnumNameSpaceProvidersEx für WSAEnumNameSpaceProvidersExW, die Unicode-Version dieser Funktion, definiert. Der lpnspBuffer-Parameter wird für den LPSAWSANAMESPACE_INFOEXW Datentyp definiert, und WSANAMESPACE_INFOEXW Strukturen werden bei Erfolg zurückgegeben.

Wenn UNICODE oder _UNICODE nicht definiert ist, wird WSAEnumNameSpaceProvidersEx für WSAEnumNameSpaceProvidersExA definiert, die ANSI-Version dieser Funktion. Der lpnspBuffer-Parameter wird für den LPSAWSANAMESPACE_INFOEXA-Datentyp definiert, und WSANAMESPACE_INFOEXA Strukturen bei Erfolg zurückgegeben werden.

Windows 8.1 und Windows Server 2012 R2: Die WSAEnumNameSpaceProvidersExW-Funktion wird für Windows Store-Apps auf Windows 8.1, Windows Server 2012 R2 und höher unterstützt.

Hinweis

Der winsock2.h-Header definiert WSAEnumNameSpaceProvidersEx 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 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 8.1, Windows Vista [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile winsock2.h
Bibliothek Ws2_32.lib
DLL Ws2_32.dll

Weitere Informationen

NAPI_PROVIDER_INSTALLATION_BLOB

WSAEnumNameSpaceProviders

WSANAMESPACE_INFOEX

WSCEnumNameSpaceProvidersEx32

WSCInstallNameSpaceEx32