Fungsi WSCDeinstallProvider32 (ws2spi.h)
Fungsi WSCDeinstallProvider32 menghapus penyedia transportasi 32-bit yang ditentukan dari database konfigurasi sistem.
Sintaks
int WSCDeinstallProvider32(
[in] LPGUID lpProviderId,
[out] LPINT lpErrno
);
Parameter
[in] lpProviderId
Penunjuk ke pengidentifikasi unik global (GUID) untuk penyedia. Nilai ini disimpan dalam setiap struktur WSAProtocol_Info .
[out] lpErrno
Penunjuk ke kode kesalahan jika fungsi gagal.
Mengembalikan nilai
Jika tidak ada kesalahan yang terjadi, WSCDeinstallProvider32 mengembalikan nol. Jika tidak, ia mengembalikan SOCKET_ERROR, dan kode kesalahan tertentu tersedia di lpErrno.
Kode kesalahan | Makna |
---|---|
Parameter lpProviderId tidak menentukan penyedia yang valid. | |
Parameter lpErrno tidak berada di bagian ruang alamat pengguna yang valid. | |
Terjadi kesalahan yang tidak dapat dipulihkan. Kesalahan ini dikembalikan dalam beberapa kondisi termasuk yang berikut ini: pengguna tidak memiliki hak istimewa administratif yang diperlukan untuk menulis ke registri Windows Sockets, atau kegagalan terjadi saat membuka entri katalog. | |
Memori tidak cukup tersedia. Kesalahan ini dikembalikan ketika memori tidak cukup untuk mengalokasikan entri katalog baru. |
Keterangan
WSCDeinstallProvider32 adalah WSCDeinstallProvider versi 32-bit yang ketat. Pada komputer 64-bit, semua panggilan tidak secara khusus 32-bit (misalnya, semua fungsi yang tidak berakhiran "32") beroperasi pada katalog 64-bit asli. Proses yang dijalankan pada komputer 64-bit harus menggunakan panggilan fungsi 32-bit tertentu untuk beroperasi pada katalog 32-bit yang ketat dan mempertahankan kompatibilitas. Definisi dan semantik panggilan 32-bit tertentu sama dengan rekan-rekan aslinya.
Fungsi WSCDeinstallProvider32 menghapus informasi konfigurasi Windows Sockets 2 umum untuk penyedia 32-bit yang ditentukan. Setelah rutinitas ini berhasil diselesaikan, informasi konfigurasi yang disimpan dalam registri akan diubah. Namun, instans Ws2_32.dll apa pun yang saat ini berada dalam memori tidak akan dapat mengenali perubahan ini.
Setelah berhasil, WSCDeinstallProvider32 akan mencoba memperingatkan semua aplikasi yang tertarik yang telah mendaftar untuk pemberitahuan perubahan dengan memanggil WSAProviderConfigChange.
Fungsi WSCDeinstallProvider32 hanya dapat dipanggil oleh pengguna yang masuk sebagai anggota grup Administrator. Jika WSCDeinstallProvider32 dipanggil oleh pengguna yang bukan anggota grup Administrator, panggilan fungsi akan gagal dan WSANO_RECOVERY dikembalikan dalam parameter lpErrno .
Untuk komputer yang menjalankan Windows Vista atau Windows Server 2008, fungsi ini juga bisa gagal karena kontrol akun pengguna (UAC). Jika aplikasi yang berisi fungsi ini dijalankan oleh pengguna yang masuk sebagai anggota grup Administrator selain Administrator bawaan, panggilan ini akan gagal kecuali aplikasi telah ditandai dalam file manifes dengan requestedExecutionLevel diatur ke requireAdministrator. Jika aplikasi pada Windows Vista atau Windows Server 2008 tidak memiliki file manifes ini, pengguna yang masuk sebagai anggota grup Administrator selain Administrator bawaan kemudian harus menjalankan aplikasi dalam shell yang ditingkatkan sebagai Administrator bawaan (administrator RunAs) agar fungsi ini berhasil.
Pemanggil fungsi ini harus menghapus file tambahan atau informasi konfigurasi khusus penyedia layanan yang diperlukan untuk menghapus instalan penyedia layanan sepenuhnya.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows Vista, Windows XP Professional x64 Edition [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008, Windows Server 2003 x64 Edition [hanya aplikasi desktop] |
Target Platform | Windows |
Header | ws2spi.h |
Pustaka | Ws2_32.lib |
DLL | Ws2_32.dll |