Bagikan melalui


Fungsi WSCEnableNSProvider32 (ws2spi.h)

Fungsi WSCEnableNSProvider32 memungkinkan atau menonaktifkan penyedia namespace 32-bit tertentu. Ini dimaksudkan untuk memberi pengguna akhir kemampuan untuk mengubah status penyedia namespace layanan.

Catatan Panggilan ini adalah WSCEnableNSProvider versi 32-bit yang ketat untuk digunakan pada komputer 64-bit. Ini disediakan untuk memungkinkan proses 64-bit mengakses katalog 32-bit.

 

Sintaks

INT WSCEnableNSProvider32(
  [in] LPGUID lpProviderId,
  [in] BOOL   fEnable
);

Parameter

[in] lpProviderId

Penunjuk ke pengidentifikasi unik global (GUID) untuk penyedia namespace.

[in] fEnable

Nilai Boolean yang, jika TRUE, penyedia namespace diatur ke status aktif. Jika FALSE, penyedia namespace dinonaktifkan dan tidak akan tersedia untuk operasi kueri atau pendaftaran layanan.

Menampilkan nilai

Jika tidak ada kesalahan yang terjadi, fungsi WSCEnableNSProvider32 mengembalikan NO_ERROR (nol). Jika tidak, ia mengembalikan SOCKET_ERROR jika fungsi gagal, dan Anda harus mengambil kode kesalahan yang sesuai menggunakan fungsi WSAGetLastError .

Kode kesalahan Makna
WSAEFAULT
Parameter lpProviderId menunjuk ke memori yang tidak berada di bagian ruang alamat pengguna yang valid.
WSAEINVAL
Pengidentifikasi penyedia namespace yang ditentukan tidak valid.
WSASYSCALLFAILURE
Panggilan sistem yang seharusnya tidak pernah gagal gagal.
WSA_NOT_ENOUGH_MEMORY
Memori tidak cukup tersedia. Kesalahan ini dikembalikan ketika memori tidak cukup untuk mengalokasikan entri katalog baru.

Keterangan

Fungsi WSCEnableNSProvider32 dimaksudkan untuk digunakan untuk mengubah status penyedia namespace layanan. Vendor perangkat lunak independen (ISV) biasanya tidak boleh membatalkan aktivasi penyedia namespace ISV lain untuk mengaktifkannya sendiri. Pilihan harus diserahkan kepada pengguna.

WSCEnableNSProvider32 adalah WSCEnableNSProvider 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 konfigurasi namespace tidak memengaruhi aplikasi yang sudah berjalan. Penyedia namespace layanan yang baru diinstal tidak akan terlihat oleh aplikasi juga tidak akan berubah dalam status aktivasi penyedia namespace. Aplikasi yang diluncurkan setelah panggilan ke WSCEnableNSProvider32 akan melihat perubahan.

Fungsi WSCEnableNSProvider32 hanya dapat dipanggil oleh pengguna yang masuk sebagai anggota grup Administrator. Jika WSCEnableNSProvider32 dipanggil oleh pengguna yang bukan anggota grup Administrator, panggilan fungsi akan gagal.

Untuk komputer yang berjalan pada Windows Vista atau Windows Server 2008, fungsi ini juga dapat 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.

Persyaratan

   
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

Lihat juga

WSCEnableNSProvider

WSCEnumProtocols32

WSCInstallNameSpace32

WSCUnInstallNameSpace32

WSCWriteNameSpaceOrder32