Platform SDK: International Features

MAKELANGID

The MAKELANGID macro creates a language identifier from a primary language identifier and a sublanguage identifier.

WORD MAKELANGID(
  USHORT usPrimaryLanguage,  // primary language identifier
  USHORT usSubLanguage       // sublanguage identifier
);

Parameters

usPrimaryLanguage
Specifies the primary language identifier. This parameter can be one of the following predefined values:
LANG_AFRIKAANS LANG_KONKANI
LANG_ALBANIAN LANG_KOREAN
LANG_ARABIC LANG_LATVIAN
LANG_ARMENIAN LANG_LITHUANIAN
LANG_ASSAMESE LANG_MACEDONIAN
LANG_AZERI LANG_MALAY
LANG_BASQUE LANG_MALAYALAM
LANG_BELARUSIAN LANG_MANIPURI
LANG_BENGALI LANG_MARATHI
LANG_BULGARIAN LANG_NEPALI
LANG_CATALAN LANG_NEUTRAL
LANG_CHINESE LANG_NORWEGIAN
LANG_CROATIAN LANG_ORIYA
LANG_CZECH LANG_POLISH
LANG_DANISH LANG_PORTUGUESE
LANG_DUTCH LANG_PUNJABI
LANG_ENGLISH LANG_ROMANIAN
LANG_ESTONIAN LANG_RUSSIAN
LANG_FAEROESE LANG_SANSKRIT
LANG_FARSI LANG_SERBIAN
LANG_FINNISH LANG_SINDHI
LANG_FRENCH LANG_SLOVAK
LANG_GEORGIAN LANG_SLOVENIAN
LANG_GERMAN LANG_SPANISH
LANG_GREEK LANG_SWAHILI
LANG_GUJARATI LANG_SWEDISH
LANG_HEBREW LANG_TAMIL
LANG_HINDI LANG_TATAR
LANG_HUNGARIAN LANG_TELUGU
LANG_ICELANDIC LANG_THAI
LANG_INDONESIAN LANG_TURKISH
LANG_ITALIAN LANG_UKRANIAN
LANG_JAPANESE LANG_URDU
LANG_KANNADA LANG_UZBEK
LANG_KASHMIRI LANG_VIETNAMESE
LANG_KAZAK  

For a user-defined language, usPrimaryLanguage can be a value in the range 0x0200 to 0x03FF. All other values are reserved for system use.

usSubLanguage
Specifies the sublanguage identifier. This parameter can be one of the following values:
SUBLANG_ARABIC_SAUDI_ARABIA SUBLANG_GERMAN_AUSTRIAN
SUBLANG_ARABIC_IRAQ SUBLANG_GERMAN_LUXEMBOURG
SUBLANG_ARABIC_EGYPT SUBLANG_GERMAN_LIECHTENSTEIN
SUBLANG_ARABIC_LIBYA SUBLANG_ITALIAN
SUBLANG_ARABIC_ALGERIA SUBLANG_ITALIAN_SWISS
SUBLANG_ARABIC_MOROCCO SUBLANG_KASHMIRI_INDIA
SUBLANG_ARABIC_TUNISIA SUBLANG_KOREAN
SUBLANG_ARABIC_OMAN SUBLANG_LITHUANIAN
SUBLANG_ARABIC_YEMEN SUBLANG_MALAY_BRUNEI_DARUSSALAM
SUBLANG_ARABIC_SYRIA SUBLANG_MALAY_MALAYSIA
SUBLANG_ARABIC_JORDAN SUBLANG_NEPALI_INDIA
SUBLANG_ARABIC_LEBANON SUBLANG_NEUTRAL
SUBLANG_ARABIC_KUWAIT SUBLANG_NORWEGIAN_BOKMAL
SUBLANG_ARABIC_UAE SUBLANG_NORWEGIAN_NYNORSK
SUBLANG_ARABIC_BAHRAIN SUBLANG_PORTUGUESE
SUBLANG_ARABIC_QATAR SUBLANG_PORTUGUESE_BRAZILIAN
SUBLANG_AZERI_CYRILLIC SUBLANG_SERBIAN_LATIN
SUBLANG_AZERI_LATIN SUBLANG_SERBIAN_CYRILLIC
SUBLANG_CHINESE_TRADITIONAL SUBLANG_SPANISH
SUBLANG_CHINESE_SIMPLIFIED SUBLANG_SPANISH_MEXICAN
SUBLANG_CHINESE_HONGKONG SUBLANG_SPANISH_MODERN
SUBLANG_CHINESE_SINGAPORE SUBLANG_SPANISH_GUATEMALA
SUBLANG_CHINESE_MACAU SUBLANG_SPANISH_COSTA_RICA
SUBLANG_DEFAULT SUBLANG_SPANISH_PANAMA
SUBLANG_DUTCH SUBLANG_SPANISH_DOMINICAN_REPUBLIC
SUBLANG_DUTCH_BELGIAN SUBLANG_SPANISH_VENEZUELA
SUBLANG_ENGLISH_US SUBLANG_SPANISH_COLOMBIA
SUBLANG_ENGLISH_UK SUBLANG_SPANISH_PERU
SUBLANG_ENGLISH_AUS SUBLANG_SPANISH_ARGENTINA
SUBLANG_ENGLISH_CAN SUBLANG_SPANISH_ECUADOR
SUBLANG_ENGLISH_NZ SUBLANG_SPANISH_CHILE
SUBLANG_ENGLISH_EIRE SUBLANG_SPANISH_URUGUAY
SUBLANG_ENGLISH_SOUTH_AFRICA SUBLANG_SPANISH_PARAGUAY
SUBLANG_ENGLISH_JAMAICA SUBLANG_SPANISH_BOLIVIA
SUBLANG_ENGLISH_CARIBBEAN SUBLANG_SPANISH_EL_SALVADOR
SUBLANG_ENGLISH_BELIZE SUBLANG_SPANISH_HONDURAS
SUBLANG_ENGLISH_TRINIDAD SUBLANG_SPANISH_NICARAGUA
SUBLANG_ENGLISH_PHILIPPINES SUBLANG_SPANISH_PUERTO_RICO
SUBLANG_ENGLISH_ZIMBABWE SUBLANG_SWEDISH
SUBLANG_FRENCH SUBLANG_SWEDISH_FINLAND
SUBLANG_FRENCH_BELGIAN SUBLANG_SYS_DEFAULT
SUBLANG_FRENCH_CANADIAN SUBLANG_URDU_INDIA
SUBLANG_FRENCH_SWISS SUBLANG_URDU_PAKISTAN
SUBLANG_FRENCH_LUXEMBOURG SUBLANG_UZBEK_CYRILLIC
SUBLANG_FRENCH_MONACO SUBLANG_UZBEK_LATIN
SUBLANG_GERMAN  
SUBLANG_GERMAN_SWISS

For a user-defined sublanguage, usSubLanguage can be a value in the range 0x20 to 0x3F. All other values are reserved for system use.

Return Values

The return value is a language identifier.

Remarks

The following three combinations of usPrimaryLanguage and usSubLanguage have special meaning.

Primary language identifier Sublanguage identifier Meaning
LANG_NEUTRAL SUBLANG_NEUTRAL Language neutral
LANG_NEUTRAL SUBLANG_DEFAULT User default language
LANG_NEUTRAL SUBLANG_SYS_DEFAULT System default language

Requirements

  Windows NT/2000: Requires Windows NT 3.1 or later.
  Windows 95/98: Requires Windows 95 or later.
  Header: Declared in Winnt.h; include Windows.h.

See Also

National Language Support Overview, National Language Support Macros, EnumSystemLocales, LANGIDFROMLCID, MAKELCID, PRIMARYLANGID, SUBLANGID