Fungsi SetLocaleInfoA (winnls.h)
Mengatur item informasi dalam bagian penimpaan pengguna dari lokal saat ini. Fungsi ini tidak mengatur default sistem.
Sintaks
BOOL SetLocaleInfoA(
[in] LCID Locale,
[in] LCTYPE LCType,
[in] LPCSTR lpLCData
);
Parameter
[in] Locale
Untuk versi ANSI fungsi, pengidentifikasi lokal lokal dengan halaman kode yang digunakan saat menginterpretasikan informasi lpLCData . Untuk versi Unicode, parameter ini diabaikan.
Anda dapat menggunakan makro MAKELCID untuk membuat pengidentifikasi lokal atau menggunakan salah satu nilai yang telah ditentukan sebelumnya berikut ini.
Pengidentifikasi lokal kustom berikut ini juga didukung.[in] LCType
Jenis informasi lokal yang akan diatur. Untuk konstanta yang valid, lihat bagian "Konstanta yang Digunakan dalam Parameter LCType dari GetLocaleInfo, GetLocaleInfoEx, dan SetLocaleInfo" di Konstanta Informasi Lokal. Aplikasi hanya dapat menentukan satu nilai per panggilan, tetapi dapat menggunakan operator OR biner untuk menggabungkan LOCALE_USE_CP_ACP dengan konstanta lainnya.
[in] lpLCData
Penunjuk ke string yang dihentikan null yang berisi informasi lokal yang akan diatur. Informasi harus dalam format khusus untuk konstanta yang ditentukan. Aplikasi ini menggunakan string Unicode untuk versi Unicode fungsi, dan string ANSI untuk versi ANSI.
Mengembalikan nilai
Mengembalikan nilai bukan nol jika berhasil, atau 0 sebaliknya. Untuk mendapatkan informasi kesalahan yang diperluas, aplikasi dapat memanggil GetLastError, yang dapat mengembalikan salah satu kode kesalahan berikut:
- ERROR_ACCESS_DISABLED_BY_POLICY. Kebijakan grup komputer atau pengguna telah melarang operasi ini.
- ERROR_INVALID_ACCESS. Kode akses tidak valid.
- ERROR_INVALID_FLAGS. Nilai yang disediakan untuk bendera tidak valid.
- ERROR_INVALID_PARAMETER. Salah satu nilai parameter tidak valid.
Keterangan
Fungsi ini menulis ke registri, di mana ia menetapkan nilai yang terkait dengan pengguna tertentu alih-alih aplikasi tertentu. Nilai registri ini memengaruhi perilaku aplikasi lain yang dijalankan oleh pengguna. Sebagai aturan, aplikasi harus memanggil fungsi ini hanya ketika pengguna telah secara eksplisit meminta perubahan. Pengaturan registri tidak boleh diubah untuk kenyamanan satu aplikasi.
Untuk parameter LCType , aplikasi harus mengatur LOCALE_USE_CP_ACP untuk menggunakan halaman kode ANSI sistem operasi alih-alih halaman kode lokal untuk terjemahan string.
Ketika versi ANSI dari fungsi ini digunakan dengan pengidentifikasi lokal khusus Unicode, fungsi dapat berhasil karena sistem operasi menggunakan halaman kode sistem. Namun, karakter yang tidak ditentukan di halaman kode sistem muncul dalam string sebagai tanda tanya (?).
Pada Windows Vista, konstanta LOCALE_SDATE dan LOCALE_STIME sudah usang. Jangan gunakan konstanta ini. Gunakan LOCALE_SSHORTDATE dan LOCALE_STIMEFORMAT sebagai gantinya. Lokal kustom mungkin tidak memiliki satu karakter pemisah seragam dalam format tanggal atau waktu: misalnya, format seperti "31/12, 2006" atau "03:56'23" mungkin valid.
Catatan
Header winnls.h mendefinisikan SetLocaleInfo sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | winnls.h (termasuk Windows.h) |
Pustaka | Kernel32.lib |
DLL | Kernel32.dll |