WSCDeinstallProvider32-Funktion (ws2spi.h)
Die WSCDeinstallProvider32-Funktion entfernt den angegebenen 32-Bit-Transportanbieter aus der Systemkonfigurationsdatenbank.
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 |
---|---|
Der lpProviderId-Parameter gibt keinen gültigen Anbieter an. | |
Der parameter lpErrno befindet sich nicht in einem gültigen Teil des Benutzeradressraums. | |
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. | |
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 |