Share via


WSCDeinstallProvider32-Funktion (ws2spi.h)

Die WSCDeinstallProvider32-Funktion entfernt den angegebenen 32-Bit-Transportanbieter aus der Systemkonfigurationsdatenbank.

Hinweis Dieser Aufruf ermöglicht es einem 64-Bit-Prozess, den 32-Bit-Winsock-Katalog zu bearbeiten, da WSCDeinstallProvider auf 64-Bit-Computern nur den nativen 64-Bit-Windows Sockets-Katalog bearbeitet.

 

Syntax

int WSCDeinstallProvider32(
  [in]  LPGUID lpProviderId,
  [out] LPINT  lpErrno
);

Parameter

[in] lpProviderId

Ein Zeiger auf einen Globally Unique Identifier (GUID) für den Anbieter. Dieser Wert wird in jeder WSAProtocol_Info-Struktur gespeichert.

[out] lpErrno

Ein Zeiger auf den Fehlercode, wenn die Funktion fehlschlägt.

Rückgabewert

Wenn kein Fehler auftritt, gibt WSCDeinstallProvider32 null zurück. Andernfalls wird SOCKET_ERROR zurückgegeben, und ein bestimmter Fehlercode ist in lpErrno verfügbar.

Fehlercode Bedeutung
WSAEINVAL
Der lpProviderId-Parameter gibt keinen gültigen Anbieter an.
WSAEFAULT
Der parameter lpErrno befindet sich nicht in einem gültigen Teil des Benutzeradressraums.
WSANO_RECOVERY
Ein nicht behebbarer Fehler ist aufgetreten. Dieser Fehler wird unter verschiedenen Bedingungen zurückgegeben, einschließlich der folgenden: Dem Benutzer fehlen die administratorrechtlichen Berechtigungen, die zum Schreiben in die Windows Sockets-Registrierung erforderlich sind, oder ein Fehler beim Öffnen eines Katalogeintrags.
WSA_NOT_ENOUGH_MEMORY
Es war nicht genügend Arbeitsspeicher verfügbar. Dieser Fehler wird zurückgegeben, wenn nicht genügend Arbeitsspeicher zum Zuordnen eines neuen Katalogeintrags vorhanden ist.

Hinweise

WSCDeinstallProvider32 ist eine streng 32-Bit-Version von WSCDeinstallProvider. Auf einem 64-Bit-Computer werden alle Aufrufe, die nicht speziell 32-Bit-Versionen (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 Entsprechungen.

Die WSCDeinstallProvider32-Funktion entfernt die allgemeinen Windows Sockets 2-Konfigurationsinformationen für den angegebenen 32-Bit-Anbieter. Nachdem diese Routine erfolgreich abgeschlossen wurde, werden die in der Registrierung gespeicherten Konfigurationsinformationen geändert. Alle Ws2_32.dll Instanzen, die sich derzeit im Arbeitsspeicher befinden, können diese Änderung jedoch nicht erkennen.

Bei Erfolg versucht WSCDeinstallProvider32 , alle interessierten Anwendungen, die sich für die Benachrichtigung über die Änderung registriert haben, zu benachrichtigen, indem WSAProviderConfigChange aufgerufen wird.

Die WSCDeinstallProvider32-Funktion kann nur von einem Benutzer aufgerufen werden, der als Mitglied der Gruppe Administratoren angemeldet ist. Wenn WSCDeinstallProvider32 von einem Benutzer aufgerufen wird, der kein Mitglied der Gruppe Administratoren ist, schlägt der Funktionsaufruf fehl, und WSANO_RECOVERY wird im lpErrno-Parameter zurückgegeben.

Bei Computern, auf denen Windows Vista oder Windows Server 2008 ausgeführt wird, kann diese Funktion auch aufgrund der Benutzerkontensteuerung (UAC) fehlschlagen. Wenn eine Anwendung, die diese Funktion enthält, von einem Benutzer ausgeführt wird, der als Mitglied der Gruppe Administratoren angemeldet ist, die nicht der integrierten Administratorgruppe angehört, schlägt dieser Aufruf fehl, es sei denn, die Anwendung wurde in der Manifestdatei mit einem requestedExecutionLevel gekennzeichnet, der auf requireAdministrator festgelegt ist. Wenn in der Anwendung unter Windows Vista oder Windows Server 2008 diese Manifestdatei nicht vorhanden ist, muss ein Benutzer, der sich als Mitglied der Gruppe "Administratoren" angemeldet hat und nicht der integrierte Administrator die Anwendung in einer erweiterten Shell als integrierter Administrator (RunAs-Administrator) ausführen, damit diese Funktion erfolgreich ist.

Der Aufrufer dieser Funktion muss alle zusätzlichen Dateien oder Dienstanbieter-spezifischen Konfigurationsinformationen entfernen, die zum vollständigen Deinstallieren des Dienstanbieters erforderlich sind.

Anforderungen

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

Weitere Informationen

WSAProviderConfigChange

WSCDeinstallProvider

WSCEnumProtocols32

WSCInstallProvider64_32