Bagikan melalui


Fungsi LocaleNameToLCID (winnls.h)

Mengonversi nama lokal menjadi pengidentifikasi lokal.

Sintaks

LCID LocaleNameToLCID(
  [in] LPCWSTR lpName,
  [in] DWORD   dwFlags
);

Parameter

[in] lpName

Penunjuk ke string yang dihentikan null yang mewakili nama lokal, atau salah satu nilai yang telah ditentukan sebelumnya berikut.

[in] dwFlags

Sebelum Windows 7:Dipesan; harus selalu 0.

Dimulai di Windows 7: Dapat diatur ke LOCALE_ALLOW_NEUTRAL_NAMES untuk memungkinkan kembalinya LCID netral.

Nilai kembali

Jika berhasil, mengembalikan pengidentifikasi lokal yang sesuai dengan nama lokal.

Jika nama lokal yang disediakan sesuai dengan lokal kustom yang merupakan default pengguna, fungsi ini mengembalikan LOCALE_CUSTOM_DEFAULT.

Jika nama lokal sesuai dengan lokal kustom yang bukan default pengguna, adalah lokal sementara, atau merupakan lokal CLDR (Repositori Data Lokal Umum Unicode), fungsi mengembalikan LOCALE_CUSTOM_UNSPECIFIED.

Fungsi mengembalikan 0 jika tidak berhasil. Untuk mendapatkan informasi kesalahan yang diperluas, aplikasi dapat memanggil GetLastError, yang dapat mengembalikan ERROR_INVALID_PARAMETER jika salah satu nilai parameter tidak valid.

Keterangan

Untuk lokal kustom, termasuk yang dibuat oleh Microsoft, aplikasi Anda harus lebih memilih nama lokal daripada pengidentifikasi lokal. Lihat Penghentian LCID untuk informasi selengkapnya.

Dimulai di Windows 8: Jika aplikasi Anda meneruskan tag bahasa ke fungsi ini dari namespace Windows.Globalization, aplikasi harus terlebih dahulu mengonversi tag dengan memanggil ResolveLocaleName.

Contoh


#include "stdafx.h"
#include "windows.h"
#include "stdio.h"

int _cdecl main(
    int argc,
    char *argv[])
{
    WCHAR strNameBuffer[LOCALE_NAME_MAX_LENGTH];
    DWORD error = ERROR_SUCCESS;
    LCID  lcid;

    // Get the name for locale 0x10407 (German (German), with phonebook sort)
    if (LCIDToLocaleName(0x10407, strNameBuffer, LOCALE_NAME_MAX_LENGTH, 0) == 0)
    {
        // There was an error
        error = GetLastError();
    }
    else
    {
        // Success, display the locale name we found
        wprintf(L"Locale Name for 0x10407 is %s\n", strNameBuffer);
    }

    // Get the LCID for the locale
    lcid = LocaleNameToLCID(strNameBuffer, 0);
    if (lcid == 0)
    {
        // There was an error
        error = GetLastError();
    }
    else
    {
        // Success, print the round trip LCID
        wprintf(L"LCID for %s is 0x%x\n", strNameBuffer, lcid);
    }
}

/* This code example produces the following output:

Locale Name for 0x10407 is de-DE_phoneb
LCID for de-DE_phoneb is 0x10407

*/


Persyaratan

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

Lihat juga

DownlevelLocaleNameToLCID

NLS: Sampel API berbasis nama

Dukungan Bahasa Nasional

Fungsi Dukungan Bahasa Nasional