Freigeben über


WSCEnumNameSpaceProvidersEx32-Funktion (ws2spi.h)

Die WSCEnumNameSpaceProvidersEx32-Funktion ruft Informationen zu verfügbaren 32-Bit-Namespaceanbietern ab.

Syntax

INT WSAAPI WSCEnumNameSpaceProvidersEx32(
  [in, out] LPDWORD                lpdwBufferLength,
  [out]     LPWSANAMESPACE_INFOEXW 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 WSCEnumNameSpaceProvidersEx32 übergebene Puffer muss ausreichen, um alle Namespaceinformationen zu enthalten.

[out] lpnspBuffer

Ein Puffer, der mit WSANAMESPACE_INFOEXW 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 WSCEnumNameSpaceProvidersEx32.

Rückgabewert

Die WSCEnumNameSpaceProvidersEx32-Funktion gibt die Anzahl der WSANAMESPACE_INFOEXW 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
Die Pufferlänge war zu klein, um alle relevanten WSANAMESPACE_INFOEXW Strukturen und zugeordneten Informationen zu empfangen, oder der lpnspBuffer-Parameter war ein **NULL**-Zeiger. 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

WSCEnumNameSpaceProvidersEx32 ist eine 32-Bit-Version von WSAEnumNameSpaceProvidersEx. Auf einem 64-Bit-Computer werden alle Aufrufe, die nicht speziell 32-Bit-Aufrufe (z. B. alle Funktionen, die nicht auf "32" enden) im nativen 64-Bit-Katalog ausgeführt. Prozesse, die auf einem 64-Bit-Computer ausgeführt werden, müssen die spezifischen 32-Bit-Funktionsaufrufe verwenden, um mit einem strikten 32-Bit-Katalog zu arbeiten und die Kompatibilität aufrechtzuerhalten. Die Definitionen und Semantik der spezifischen 32-Bit-Aufrufe sind identisch mit ihren nativen Gegenstücken.

Derzeit ist der einzige in Windows enthaltene Namespace, der Informationen im ProviderSpecific-Member der WSANAMESPACE_INFOEXW-Struktur verwendet, Namespaceanbieter für den NS_EMAIL-Namespace. Das Format des ProviderSpecific-Members für einen NS_EMAIL Namespaceanbieter ist eine NAPI_PROVIDER_INSTALLATION_BLOB-Struktur .

Die 32-Bit-SPI-Funktion entspricht der nativen API-Funktion (WSAEnumNameSpaceProvidersEx), da es kein Konzept eines "ausgeblendeten" Namespaceanbieters gibt.

Das anbieterspezifische Datenblob, das dem Namespaceeintrag zugeordnet ist, der im lpProviderInfo-Parameter an die WSCInstallNameSpaceEx32-Funktion übergeben wird, kann mithilfe der Funktion WSCEnumNameSpaceProvidersEx32 abgefragt werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile ws2spi.h
Bibliothek Ws2_32.lib
DLL Ws2_32.dll

Weitere Informationen

NAPI_PROVIDER_INSTALLATION_BLOB

WSAEnumNameSpaceProvidersEx

WSANAMESPACE_INFOEXW

WSCEnumNameSpaceProviders32

WSCInstallNameSpaceEx32