Fungsi GetLocaleInfoA (winnls.h)
Mengambil informasi tentang lokal yang ditentukan oleh pengidentifikasi.
Sintaksis
int GetLocaleInfoA(
[in] LCID Locale,
[in] LCTYPE LCType,
[out, optional] LPSTR lpLCData,
[in] int cchData
);
Parameter
[in] Locale
pengidentifikasi lokal
- LOCALE_CUSTOM_DEFAULT
- LOCALE_CUSTOM_UI_DEFAULT
- LOCALE_CUSTOM_UNSPECIFIED
- LOCALE_INVARIANT
- LOCALE_SYSTEM_DEFAULT
- LOCALE_USER_DEFAULT
[in] LCType
Informasi lokal untuk diambil. Untuk definisi terperinci, lihat parameter
[out, optional] lpLCData
Penunjuk ke buffer tempat fungsi ini mengambil informasi lokal yang diminta. Pointer ini tidak digunakan jika cchData diatur ke 0. Untuk informasi selengkapnya, lihat bagian Keterangan.
[in] cchData
Ukuran, dalam nilai TCHAR, dari buffer data yang ditunjukkan oleh lpLCData. Atau, aplikasi dapat mengatur parameter ini ke 0. Dalam hal ini, fungsi tidak menggunakan parameter
Mengembalikan nilai
Mengembalikan jumlah karakter yang diambil dalam buffer data lokal jika berhasil dan cchData adalah nilai bukan nol. Jika fungsi berhasil, cchData nonzero, dan LOCALE_RETURN_NUMBER ditentukan, nilai yang dikembalikan adalah ukuran bilangan bulat yang diambil dalam buffer data; yaitu, 2 untuk versi Unicode dari fungsi atau 4 untuk versi ANSI. Jika fungsi berhasil dan nilai cchData adalah 0, nilai yang dikembalikan adalah ukuran yang diperlukan, dalam karakter termasuk karakter null, untuk buffer data lokal.
Fungsi mengembalikan 0 jika tidak berhasil. Untuk mendapatkan informasi kesalahan yang diperluas, aplikasi dapat memanggil GetLastError, yang dapat mengembalikan salah satu kode kesalahan berikut:
- ERROR_INSUFFICIENT_BUFFER. Ukuran buffer yang disediakan tidak cukup besar, atau salah diatur ke NULL.
- ERROR_INVALID_FLAGS. Nilai yang disediakan untuk bendera tidak valid.
- ERROR_INVALID_PARAMETER. Salah satu nilai parameter tidak valid.
Komentar
Untuk pengoperasian fungsi ini, lihat Keterangan untuk GetLocaleInfoEx.
int ret;
CALID calid;
DWORD value;
ret = GetLocaleInfo(LOCALE_USER_DEFAULT,
LOCALE_ICALENDARTYPE | LOCALE_RETURN_NUMBER,
(LPTSTR)&value,
sizeof(value) / sizeof(TCHAR) );
calid = value;
LOCALESIGNATURE LocSig;
ret = GetLocaleInfo(LOCALE_USER_DEFAULT,
LOCALE_FONTSIGNATURE,
(LPWSTR)&LocSig,
sizeof(LocSig) / sizeof(TCHAR) );
String ANSI yang diambil oleh versi ANSI dari fungsi ini diterjemahkan dari Unicode ke ANSI berdasarkan halaman kode ANSI default untuk pengidentifikasi lokal. Namun, jika LOCALE_USE_CP_ACP ditentukan, terjemahan didasarkan pada halaman kode ANSI default sistem.
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 (?).
Nota
Header winnls.h mendefinisikan GetLocaleInfo sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosedur 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
Syarat | Nilai |
---|---|
klien minimum yang didukung | Windows 2000 Professional [aplikasi desktop | Aplikasi UWP] |
server minimum yang didukung |
Windows 2000 Server [aplikasi desktop | Aplikasi UWP] |
Platform Target |
Windows |
Header |
winnls.h (termasuk Windows.h) |
Pustaka |
Kernel32.lib |
DLL |
Kernel32.dll |
Lihat juga
Dukungan Bahasa Nasional
Fungsi Dukungan Bahasa Nasional
Mengambil dan Mengatur Informasi Lokal