Bagikan melalui


Fungsi GetUserPreferredUILanguages (winnls.h)

Mengambil informasi tentang pengaturan bahasa tampilan. Untuk informasi selengkapnya, lihat Manajemen Bahasa Antarmuka Pengguna.

Sintaks

BOOL GetUserPreferredUILanguages(
  [in]            DWORD   dwFlags,
  [out]           PULONG  pulNumLanguages,
  [out, optional] PZZWSTR pwszLanguagesBuffer,
  [in, out]       PULONG  pcchLanguagesBuffer
);

Parameter

[in] dwFlags

Bendera yang mengidentifikasi format dan pemfilteran bahasa. Bendera berikut menentukan format bahasa yang akan digunakan untuk daftar bahasa tampilan. Bendera saling eksklusif, dan defaultnya adalah MUI_LANGUAGE_NAME.

Nilai Makna
MUI_LANGUAGE_ID Mengambil string bahasa dalam pengidentifikasi bahasa
MUI_LANGUAGE_NAME Ambil string bahasa dalam format nama bahasa .

[out] pulNumLanguages

Arahkan ke jumlah bahasa yang diambil dalam pwszLanguagesBuffer.

[out, optional] pwszLanguagesBuffer

Opsional. Penunjuk ke buffer di mana fungsi ini mengambil daftar bahasa tampilan yang dibatasi null, dalam format yang ditentukan oleh dwflags. Daftar ini berakhir dengan dua karakter null.

Atau jika parameter ini diatur ke NULL dan pcchLanguagesBuffer diatur ke 0, fungsi mengambil ukuran buffer bahasa yang diperlukan di pcchLanguagesBuffer. Ukuran yang diperlukan mencakup dua karakter null.

[in, out] pcchLanguagesBuffer

Penunjuk ke ukuran, dalam karakter, untuk buffer bahasa yang ditunjukkan oleh pwszLanguagesBuffer. Setelah berhasil dikembalikan dari fungsi, parameter berisi ukuran buffer bahasa yang diambil.

Atau jika parameter ini diatur ke 0 dan pwszLanguagesBuffer diatur ke NULL, fungsi mengambil ukuran buffer bahasa yang diperlukan di pcchLanguagesBuffer.

Mengembalikan nilai

Mengembalikan TRUE jika berhasil atau FALSE sebaliknya. Untuk mendapatkan informasi kesalahan yang diperluas, aplikasi dapat memanggil fungsi GetLastError, yang dapat mengembalikan salah satu kode kesalahan berikut:

  • ERROR_INSUFFICIENT_BUFFER. Ukuran buffer yang disediakan tidak cukup besar, atau salah diatur ke NULL.

Jika fungsi gagal karena alasan lain, nilai pulNumLanguages dan pcchLanguagesBuffer tidak ditentukan.

Keterangan

Ketika MUI_LANGUAGE_ID ditentukan, string bahasa yang diambil akan menjadi pengidentifikasi bahasa heksadesimal yang tidak menyertakan 0x di depannya, dan panjangnya akan menjadi 4 karakter. Misalnya, en-US akan dikembalikan sebagai "0409" dan en sebagai "0009".

Bahasa tampilan tidak boleh menyertakan lebih dari satu bahasa Paket Antarmuka Bahasa (LIP) yang sesuai dengan lokal tambahan. Jika daftar menyertakan lebih dari salah satu bahasa ini, dan jika aplikasi menentukan MUI_LANGUAGE_ID dalam panggilan ke fungsi, buffer bahasa berisi "1400" untuk bahasa tersebut. String ini sesuai dengan nilai heksadesimal LOCALE_CUSTOM_UI_DEFAULT.

Daftar bahasa yang diambil oleh fungsi ini memiliki karakteristik berikut:

  • Setiap bahasa mewakili lokal NLS yang valid.
  • Setiap bahasa diinstal pada sistem operasi.
  • Daftar ini berisi satu entri untuk setiap bahasa, tanpa entri duplikat.
  • Jika daftar kosong atau tidak memenuhi kriteria validasi ini, daftar bahasa UI pilihan sistem digunakan sebagai gantinya.

Tanda Tangan C#

[DllImport("Kernel32.dll", CharSet = CharSet.Auto)]
        static extern System.Boolean GetUserPreferredUILanguages(
            System.UInt32 dwFlags,
            ref System.UInt32 pulNumLanguages,
            System.IntPtr pwszLanguagesBuffer,
            ref System.UInt32 pcchLanguagesBuffer
            );

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header winnls.h (termasuk Windows.h)
Pustaka Kernel32.lib
DLL Kernel32.dll

Lihat juga

Fungsi GetSystemPreferredUILanguages, fungsi GetThreadPreferredUILanguages, fungsi GetThreadUILanguage, fungsi SetThreadPreferredUILanguages, Antarmuka Pengguna Multibahasa, Fungsi Antarmuka Pengguna Multibahasa