National Language Support (NLS) API Reference

About NLSWeb

Select an Operating System:

Note that the following predefined NLSData table is provided only as a reference. This information can be retrieved using Win32 API GetLocaleInfoW and .NET Framework CultureInfo class.

NLS Information for Windows Vista


LCID
Culture Identifier
Culture Name Locale
Language Country/Region
Language Local
language name
ANSI
codepage
OEM
codepage
Country or Region name abbreviation * Language name abbreviation **
0x0036 af Afrikaans Afrikaans Afrikaans 1252 850 ZAF AFK
0x0436 af-ZA Afrikaans (South Africa) Afrikaans Afrikaans (Suid Afrika) 1252 850 ZAF AFK
0x001C sq Albanian Albanian shqipe 1250 852 ALB SQI
0x041C sq-AL Albanian (Albania) Albanian shqipe (Shqipëria) 1250 852 ALB SQI
0x0484 gsw-FR Alsatian (France) Alsatian Elsässisch (Frànkrisch) 1252 850 FRA GSW
0x045E am-ET Amharic (Ethiopia) Amharic አማርኛ (ኢትዮጵያ) 0 1 eth AMH
0x0001 ar Arabic‎ Arabic العربية‏ 1256 720 SAU ARA
0x1401 ar-DZ Arabic (Algeria)‎ Arabic العربية (الجزائر)‏ 1256 720 DZA ARG
0x3C01 ar-BH Arabic (Bahrain)‎ Arabic العربية (البحرين)‏ 1256 720 BHR ARH
0x0C01 ar-EG Arabic (Egypt)‎ Arabic العربية (مصر)‏ 1256 720 EGY ARE
0x0801 ar-IQ Arabic (Iraq)‎ Arabic العربية (العراق)‏ 1256 720 IRQ ARI
0x2C01 ar-JO Arabic (Jordan)‎ Arabic العربية (الأردن)‏ 1256 720 JOR ARJ
0x3401 ar-KW Arabic (Kuwait)‎ Arabic العربية (الكويت)‏ 1256 720 KWT ARK
0x3001 ar-LB Arabic (Lebanon)‎ Arabic العربية (لبنان)‏ 1256 720 LBN ARB
0x1001 ar-LY Arabic (Libya)‎ Arabic العربية (ليبيا)‏ 1256 720 LBY ARL
0x1801 ar-MA Arabic (Morocco)‎ Arabic العربية (المملكة المغربية)‏ 1256 720 MAR ARM
0x2001 ar-OM Arabic (Oman)‎ Arabic العربية (عمان)‏ 1256 720 OMN ARO
0x4001 ar-QA Arabic (Qatar)‎ Arabic العربية (قطر)‏ 1256 720 QAT ARQ
0x0401 ar-SA Arabic (Saudi Arabia)‎ Arabic العربية (المملكة العربية السعودية)‏ 1256 720 SAU ARA
0x2801 ar-SY Arabic (Syria)‎ Arabic العربية (سوريا)‏ 1256 720 SYR ARS
0x1C01 ar-TN Arabic (Tunisia)‎ Arabic العربية (تونس)‏ 1256 720 TUN ART
0x3801 ar-AE Arabic (U.A.E.)‎ Arabic العربية (الإمارات العربية المتحدة)‏ 1256 720 ARE ARU
0x2401 ar-YE Arabic (Yemen)‎ Arabic العربية (اليمن)‏ 1256 720 YEM ARY
0x002B hy Armenian Armenian Հայերեն 0 1 ARM HYE
0x042B hy-AM Armenian (Armenia) Armenian Հայերեն (Հայաստան) 0 1 ARM HYE
0x044D as-IN Assamese (India) Assamese অসমীয়া (ভাৰত) 0 1 IND ASM
0x002C az Azeri Azeri (Latin) Azərbaycan­ılı 1254 857 AZE AZE
0x082C az-Cyrl-AZ Azeri (Cyrillic, Azerbaijan) Azeri (Cyrillic) Азәрбајҹан (Азәрбајҹан) 1251 866 AZE AZE
0x042C az-Latn-AZ Azeri (Latin, Azerbaijan) Azeri (Latin) Azərbaycan­ılı (Azərbaycanca) 1254 857 AZE AZE
0x046D ba-RU Bashkir (Russia) Bashkir Башҡорт (Россия) 1251 866 RUS BAS
0x002D eu Basque Basque euskara 1252 850 ESP EUQ
0x042D eu-ES Basque (Basque) Basque euskara (euskara) 1252 850 ESP EUQ
0x0023 be Belarusian Belarusian Беларускі 1251 866 BLR BEL
0x0423 be-BY Belarusian (Belarus) Belarusian Беларускі (Беларусь) 1251 866 BLR BEL
0x0845 bn-BD Bengali (Bangladesh) Bengali বাংলা (বাংলা) 0 1 BDG BNG
0x0445 bn-IN Bengali (India) Bengali বাংলা (ভারত) 0 1 IND BNG
0x201A bs-Cyrl-BA Bosnian (Cyrillic, Bosnia and Herzegovina) Bosnian (Cyrillic) босански (Босна и Херцеговина) 1251 855 BIH BSC
0x141A bs-Latn-BA Bosnian (Latin, Bosnia and Herzegovina) Bosnian (Latin) bosanski (Bosna i Hercegovina) 1250 852 BIH BSB
0x047E br-FR Breton (France) Breton brezhoneg (Frañs) 1252 850 FRA BRE
0x0002 bg Bulgarian Bulgarian български 1251 866 BGR BGR
0x0402 bg-BG Bulgarian (Bulgaria) Bulgarian български (България) 1251 866 BGR BGR
0x0003 ca Catalan Catalan català 1252 850 ESP CAT
0x0403 ca-ES Catalan (Catalan) Catalan català (català) 1252 850 ESP CAT
0x0C04 zh-HK Chinese (Hong Kong S.A.R.) Chinese 中文(香港特别行政區) 950 950 HKG ZHH
0x1404 zh-MO Chinese (Macao S.A.R.) Chinese 中文(澳門特别行政區) 950 950 MCO ZHM
0x0804 zh-CN Chinese (People's Republic of China) Chinese 中文(中华人民共和国) 936 936 CHN CHS
0x0004 zh-Hans Chinese (Simplified) Chinese 中文(简体) 936 936 CHN CHS
0x1004 zh-SG Chinese (Singapore) Chinese 中文(新加坡) 936 936 SGP ZHI
0x0404 zh-TW Chinese (Taiwan) Chinese 中文(台灣) 950 950 TWN CHT
0x7C04 zh-Hant Chinese (Traditional) Chinese 中文(繁體) 950 950 TWN CHT
0x0483 co-FR Corsican (France) Corsican Corsu (France) 1252 850 FRA COS
0x001A hr Croatian Croatian hrvatski 1250 852 HRV HRV
0x041A hr-HR Croatian (Croatia) Croatian hrvatski (Hrvatska) 1250 852 HRV HRV
0x101A hr-BA Croatian (Latin, Bosnia and Herzegovina) Croatian (Latin) hrvatski (Bosna i Hercegovina) 1250 852 BIH HRB
0x0005 cs Czech Czech čeština 1250 852 CZE CSY
0x0405 cs-CZ Czech (Czech Republic) Czech čeština (Česká republika) 1250 852 CZE CSY
0x0006 da Danish Danish dansk 1252 850 DNK DAN
0x0406 da-DK Danish (Denmark) Danish dansk (Danmark) 1252 850 DNK DAN
0x048C prs-AF Dari (Afghanistan) Dari درى (افغانستان) 1256 720 AFG PRS
0x0065 div Divehi‎ Divehi ދިވެހިބަސް‏ 0 1 MDV DIV
0x0465 div-MV Divehi (Maldives)‎ Divehi ދިވެހިބަސް (ދިވެހި ރާއްޖެ)‏ 0 1 MDV DIV
0x0013 nl Dutch Dutch Nederlands 1252 850 NLD NLD
0x0813 nl-BE Dutch (Belgium) Dutch Nederlands (België) 1252 850 BEL NLB
0x0413 nl-NL Dutch (Netherlands) Dutch Nederlands (Nederland) 1252 850 NLD NLD
0x0009 en English English English 1252 437 USA ENU
0x0C09 en-AU English (Australia) English English (Australia) 1252 850 AUS ENA
0x2809 en-BZ English (Belize) English English (Belize) 1252 850 BLZ ENL
0x1009 en-CA English (Canada) English English (Canada) 1252 850 CAN ENC
0x2409 en-029 English (Caribbean) English English (Caribbean) 1252 850 CAR ENB
0x4009 en-IN English (India) English English (India) 1252 437 IND ENN
0x1809 en-IE English (Ireland) English English (Eire) 1252 850 IRL ENI
0x2009 en-JM English (Jamaica) English English (Jamaica) 1252 850 JAM ENJ
0x4409 en-MY English (Malaysia) English English (Malaysia) 1252 437 MYS ENM
0x1409 en-NZ English (New Zealand) English English (New Zealand) 1252 850 NZL ENZ
0x3409 en-PH English (Republic of the Philippines) English English (Philippines) 1252 437 PHL ENP
0x4809 en-SG English (Singapore) English English (Singapore) 1252 437 SGP ENE
0x1C09 en-ZA English (South Africa) English English (South Africa) 1252 437 ZAF ENS
0x2C09 en-TT English (Trinidad and Tobago) English English (Trinidad y Tobago) 1252 850 TTO ENT
0x0809 en-GB English (United Kingdom) English English (United Kingdom) 1252 850 GBR ENG
0x0409 en-US English (United States) English English (United States) 1252 437 USA ENU
0x3009 en-ZW English (Zimbabwe) English English (Zimbabwe) 1252 437 ZWE ENW
0x0025 et Estonian Estonian eesti 1257 775 EST ETI
0x0425 et-EE Estonian (Estonia) Estonian eesti (Eesti) 1257 775 EST ETI
0x0038 fo Faroese Faroese føroyskt 1252 850 FRO FOS
0x0438 fo-FO Faroese (Faroe Islands) Faroese føroyskt (Føroyar) 1252 850 FRO FOS
0x0464 fil-PH Filipino (Philippines) Filipino Filipino (Pilipinas) 1252 437 PHL FPO
0x000B fi Finnish Finnish suomi 1252 850 FIN FIN
0x040B fi-FI Finnish (Finland) Finnish suomi (Suomi) 1252 850 FIN FIN
0x000C fr French French français 1252 850 FRA FRA
0x080C fr-BE French (Belgium) French français (Belgique) 1252 850 BEL FRB
0x0C0C fr-CA French (Canada) French français (Canada) 1252 850 CAN FRC
0x040C fr-FR French (France) French français (France) 1252 850 FRA FRA
0x140C fr-LU French (Luxembourg) French français (Luxembourg) 1252 850 LUX FRL
0x180C fr-MC French (Principality of Monaco) French français (Principauté de Monaco) 1252 850 MCO FRM
0x100C fr-CH French (Switzerland) French français (Suisse) 1252 850 CHE FRS
0x0462 fy-NL Frisian (Netherlands) Frisian Frysk (Nederlân) 1252 850 NLD FYN
0x0056 gl Galician Galician galego 1252 850 ESP GLC
0x0456 gl-ES Galician (Galician) Galician galego (galego) 1252 850 ESP GLC
0x0037 ka Georgian Georgian ქართული 0 1 GEO KAT
0x0437 ka-GE Georgian (Georgia) Georgian ქართული (საქართველო) 0 1 GEO KAT
0x0007 de German German Deutsch 1252 850 DEU DEU
0x0C07 de-AT German (Austria) German Deutsch (Österreich) 1252 850 AUT DEA
0x0407 de-DE German (Germany) German Deutsch (Deutschland) 1252 850 DEU DEU
0x1407 de-LI German (Liechtenstein) German Deutsch (Liechtenstein) 1252 850 LIE DEC
0x1007 de-LU German (Luxembourg) German Deutsch (Luxemburg) 1252 850 LUX DEL
0x0807 de-CH German (Switzerland) German Deutsch (Schweiz) 1252 850 CHE DES
0x0008 el Greek Greek ελληνικά 1253 737 GRC ELL
0x0408 el-GR Greek (Greece) Greek ελληνικά (Ελλάδα) 1253 737 GRC ELL
0x046F kl-GL Greenlandic (Greenland) Greenlandic kalaallisut (Kalaallit Nunaat) 1252 850 GRL KAL
0x0047 gu Gujarati Gujarati ગુજરાતી 0 1 IND GUJ
0x0447 gu-IN Gujarati (India) Gujarati ગુજરાતી (ભારત) 0 1 IND GUJ
0x0468 ha-Latn-NG Hausa (Latin, Nigeria) Hausa (Latin) Hausa (Nigeria) 1252 437 NGA HAU
0x000D he Hebrew‎ Hebrew עברית‏ 1255 862 ISR HEB
0x040D he-IL Hebrew (Israel)‎ Hebrew עברית (ישראל)‏ 1255 862 ISR HEB
0x0039 hi Hindi Hindi हिंदी 0 1 IND HIN
0x0439 hi-IN Hindi (India) Hindi हिंदी (भारत) 0 1 IND HIN
0x000E hu Hungarian Hungarian magyar 1250 852 HUN HUN
0x040E hu-HU Hungarian (Hungary) Hungarian magyar (Magyarország) 1250 852 HUN HUN
0x000F is Icelandic Icelandic íslenska 1252 850 ISL ISL
0x040F is-IS Icelandic (Iceland) Icelandic íslenska (Ísland) 1252 850 ISL ISL
0x0470 ig-NG Igbo (Nigeria) Igbo Igbo (Nigeria) 1252 437 NGA IBO
0x0021 id Indonesian Indonesian Bahasa Indonesia 1252 850 IDN IND
0x0421 id-ID Indonesian (Indonesia) Indonesian Bahasa Indonesia (Indonesia) 1252 850 IDN IND
0x085D iu-Latn-CA Inuktitut (Latin, Canada) Inuktitut (Latin) Inuktitut (Kanatami) (kanata) 1252 437 CAN IUK
0x045D iu-Cans-CA Inuktitut (Syllabics, Canada) Inuktitut ᐃᓄᒃᑎᑐᑦ (ᑲᓇᑕ) 0 1 CAN IUS
0x083C ga-IE Irish (Ireland) Irish Gaeilge (Éire) 1252 850 IRL IRE
0x0434 xh-ZA isiXhosa (South Africa) isiXhosa isiXhosa (uMzantsi Afrika) 1252 850 ZAF XHO
0x0435 zu-ZA isiZulu (South Africa) isiZulu isiZulu (iNingizimu Afrika) 1252 850 ZAF ZUL
0x0010 it Italian Italian italiano 1252 850 ITA ITA
0x0410 it-IT Italian (Italy) Italian italiano (Italia) 1252 850 ITA ITA
0x0810 it-CH Italian (Switzerland) Italian italiano (Svizzera) 1252 850 CHE ITS
0x0011 ja Japanese Japanese 日本語 932 932 JPN JPN
0x0411 ja-JP Japanese (Japan) Japanese 日本語 (日本) 932 932 JPN JPN
0x004B kn Kannada Kannada ಕನ್ನಡ 0 1 IND KDI
0x044B kn-IN Kannada (India) Kannada ಕನ್ನಡ (ಭಾರತ) 0 1 IND KDI
0x003F kk Kazakh Kazakh Қазащb 1251 866 KAZ KKZ
0x043F kk-KZ Kazakh (Kazakhstan) Kazakh Қазақ (Қазақстан) 1251 866 KAZ KKZ
0x0453 km-KH Khmer (Cambodia) Khmer ខ្មែរ (កម្ពុជា) 0 1 KHM KHM
0x0486 qut-GT K'iche (Guatemala) K'iche K'iche (Guatemala) 1252 850 GTM QUT
0x0487 rw-RW Kinyarwanda (Rwanda) Kinyarwanda Kinyarwanda (Rwanda) 1252 437 RWA KIN
0x0041 sw Kiswahili Kiswahili Kiswahili 1252 437 KEN SWK
0x0441 sw-KE Kiswahili (Kenya) Kiswahili Kiswahili (Kenya) 1252 437 KEN SWK
0x0057 kok Konkani Konkani कोंकणी 0 1 IND KNK
0x0457 kok-IN Konkani (India) Konkani कोंकणी (भारत) 0 1 IND KNK
0x0012 ko Korean Korean 한국어 949 949 KOR KOR
0x0412 ko-KR Korean (Korea) Korean 한국어 (대한민국) 949 949 KOR KOR
0x0040 ky Kyrgyz Kyrgyz Кыргыз 1251 866 KGZ KYR
0x0440 ky-KG Kyrgyz (Kyrgyzstan) Kyrgyz Кыргыз (Кыргызстан) 1251 866 KGZ KYR
0x0454 lo-LA Lao (Lao P.D.R.) Lao ລາວ (ສ.ປ.ປ. ລາວ) 0 1 LAO LAO
0x0026 lv Latvian Latvian latviešu 1257 775 LVA LVI
0x0426 lv-LV Latvian (Latvia) Latvian latviešu (Latvija) 1257 775 LVA LVI
0x0027 lt Lithuanian Lithuanian lietuvių 1257 775 LTU LTH
0x0427 lt-LT Lithuanian (Lithuania) Lithuanian lietuvių (Lietuva) 1257 775 LTU LTH
0x082E wee-DE Lower Sorbian (Germany) Lower Sorbian dolnoserbšćina (Nimska) 1252 850 GER DSB
0x046E lb-LU Luxembourgish (Luxembourg) Luxembourgish Lëtzebuergesch (Luxembourg) 1252 850 LUX LBX
0x002F mk Macedonian Macedonian (FYROM) македонски јазик 1251 866 MKD MKI
0x042F mk-MK Macedonian (Former Yugoslav Republic of Macedonia) Macedonian (FYROM) македонски јазик (Македонија) 1251 866 MKD MKI
0x003E ms Malay Malay Bahasa Malaysia 1252 850 MYS MSL
0x083E ms-BN Malay (Brunei Darussalam) Malay Bahasa Malaysia (Brunei Darussalam) 1252 850 BRN MSB
0x043E ms-MY Malay (Malaysia) Malay Bahasa Malaysia (Malaysia) 1252 850 MYS MSL
0x044C ml-IN Malayalam (India) Malayalam മലയാളം (ഭാരതം) 0 1 IND MYM
0x043A mt-MT Maltese (Malta) Maltese Malti (Malta) 0 1 MLT MLT
0x0481 mi-NZ Maori (New Zealand) Maori Reo Māori (Aotearoa) 0 1 NZL MRI
0x047A arn-CL Mapudungun (Chile) Mapudungun Mapudungun (Chile) 1252 850 CHL MPD
0x004E mr Marathi Marathi मराठी 0 1 IND MAR
0x044E mr-IN Marathi (India) Marathi मराठी (भारत) 0 1 IND MAR
0x047C moh-CA Mohawk (Mohawk) Mohawk Kanien'kéha (Canada) 1252 850 CAN MWK
0x0050 mn Mongolian Mongolian (Cyrillic) Монгол хэл 1251 866 MNG MON
0x0450 mn-MN Mongolian (Cyrillic, Mongolia) Mongolian (Cyrillic) Монгол хэл (Монгол улс) 1251 866 MNG MON
0x0850 mn-Mong-CN Mongolian (Traditional Mongolian, PRC) Mongolian (Traditional Mongolian) ᠮᠣᠩᠭᠤᠯ ᠬᠡᠯᠡ (ᠪᠦᠭᠦᠳᠡ ᠨᠠᠢᠷᠠᠮᠳᠠᠬᠤ ᠳᠤᠮᠳᠠᠳᠤ ᠠᠷᠠᠳ ᠣᠯᠣᠰ) 0 1 CHN MNG
0x0461 ne-NP Nepali (Nepal) Nepali नेपाली (नेपाल) 0 1 NEP NEP
0x0014 no Norwegian Norwegian (Bokmål) norsk 1252 850 NOR NOR
0x0414 nb-NO Norwegian, Bokmål (Norway) Norwegian (Bokmål) norsk, bokmål (Norge) 1252 850 NOR NOR
0x0814 nn-NO Norwegian, Nynorsk (Norway) Norwegian (Nynorsk) norsk, nynorsk (Noreg) 1252 850 NOR NON
0x0482 oc-FR Occitan (France) Occitan Occitan (França) 1252 850 FRA OCI
0x0448 or-IN Oriya (India) Oriya ଓଡ଼ିଆ (ଭାରତ) 0 1 IND ORI
0x0463 ps-AF Pashto (Afghanistan) Pashto پښتو (افغانستان) 0 1 AFG PAS
0x0029 fa Persian‎ Persian فارسى‏ 1256 720 IRN FAR
0x0429 fa-IR Persian‎ Persian فارسى (ايران)‏ 1256 720 IRN FAR
0x0015 pl Polish Polish polski 1250 852 POL PLK
0x0415 pl-PL Polish (Poland) Polish polski (Polska) 1250 852 POL PLK
0x0016 pt Portuguese Portuguese Português 1252 850 BRA PTB
0x0416 pt-BR Portuguese (Brazil) Portuguese Português (Brasil) 1252 850 BRA PTB
0x0816 pt-PT Portuguese (Portugal) Portuguese português (Portugal) 1252 850 PRT PTG
0x0046 pa Punjabi Punjabi ਪੰਜਾਬੀ 0 1 IND PAN
0x0446 pa-IN Punjabi (India) Punjabi ਪੰਜਾਬੀ (ਭਾਰਤ) 0 1 IND PAN
0x046B quz-BO Quechua (Bolivia) Quechua runasimi (Bolivia Suyu) 1252 850 BOL QUB
0x086B quz-EC Quechua (Ecuador) Quechua runasimi (Ecuador Suyu) 1252 850 ECU QUE
0x0C6B quz-PE Quechua (Peru) Quechua runasimi (Peru Suyu) 1252 850 PER QUP
0x0018 ro Romanian Romanian română 1250 852 ROM ROM
0x0418 ro-RO Romanian (Romania) Romanian română (România) 1250 852 ROM ROM
0x0417 rm-CH Romansh (Switzerland) Romansh Rumantsch (Svizra) 1252 850 CHE RMC
0x0019 ru Russian Russian русский 1251 866 RUS RUS
0x0419 ru-RU Russian (Russia) Russian русский (Россия) 1251 866 RUS RUS
0x243B smn-FI Sami, Inari (Finland) Sami (Inari) sämikielâ (Suomâ) 1252 850 FIN SMN
0x103B smj-NO Sami, Lule (Norway) Sami (Lule) julevusámegiella (Vuodna) 1252 850 NOR SMJ
0x143B smj-SE Sami, Lule (Sweden) Sami (Lule) julevusámegiella (Svierik) 1252 850 SWE SMK
0x0C3B se-FI Sami, Northern (Finland) Sami (Northern) davvisámegiella (Suopma) 1252 850 FIN SMG
0x043B se-NO Sami, Northern (Norway) Sami (Northern) davvisámegiella (Norga) 1252 850 NOR SME
0x083B se-SE Sami, Northern (Sweden) Sami (Northern) davvisámegiella (Ruoŧŧa) 1252 850 SWE SMF
0x203B sms-FI Sami, Skolt (Finland) Sami (Skolt) sääm´ǩiõll (Lää´ddjânnam) 1252 850 FIN SMS
0x183B sma-NO Sami, Southern (Norway) Sami (Southern) åarjelsaemiengiele (Nöörje) 1252 850 NOR SMA
0x1C3B sma-SE Sami, Southern (Sweden) Sami (Southern) åarjelsaemiengiele (Sveerje) 1252 850 SWE SMB
0x004F sa Sanskrit Sanskrit संस्कृत 0 1 IND SAN
0x044F sa-IN Sanskrit (India) Sanskrit संस्कृत (भारतम्) 0 1 IND SAN
0x7C1A sr Serbian Serbian (Latin) srpski 1251 855 SCG SRB
0x1C1A sr-Cyrl-BA Serbian (Cyrillic, Bosnia and Herzegovina) Serbian (Cyrillic) српски (Босна и Херцеговина) 1251 855 BIH SRN
0x0C1A sr-Cyrl-SP Serbian (Cyrillic, Serbia) Serbian (Cyrillic) српски (Србија и Црна Гора) 1251 855 SCG SRB
0x181A sr-Latn-BA Serbian (Latin, Bosnia and Herzegovina) Serbian (Latin) srpski (Bosna i Hercegovina) 1250 852 BIH SRS
0x081A sr-Latn-SP Serbian (Latin, Serbia) Serbian (Latin) srpski (Srbija i Crna Gora) 1250 852 SCG SRL
0x046C nso-ZA Sesotho sa Leboa (South Africa) Sesotho sa Leboa Sesotho sa Leboa (Afrika Borwa) 1252 850 ZAF NSO
0x0432 tn-ZA Setswana (South Africa) Setswana Setswana (Aforika Borwa) 1252 850 ZAF TSN
0x045B si-LK Sinhala (Sri Lanka) Sinhala සිංහ (ශ්‍රී ලංකා) 0 1 LKA SIN
0x001B sk Slovak Slovak slovenčina 1250 852 SVK SKY
0x041B sk-SK Slovak (Slovakia) Slovak slovenčina (Slovenská republika) 1250 852 SVK SKY
0x0024 sl Slovenian Slovenian slovenski 1250 852 SVN SLV
0x0424 sl-SI Slovenian (Slovenia) Slovenian slovenski (Slovenija) 1250 852 SVN SLV
0x000A es Spanish Spanish español 1252 850 ESP ESP
0x2C0A es-AR Spanish (Argentina) Spanish Español (Argentina) 1252 850 ARG ESS
0x400A es-BO Spanish (Bolivia) Spanish Español (Bolivia) 1252 850 BOL ESB
0x340A es-CL Spanish (Chile) Spanish Español (Chile) 1252 850 CHL ESL
0x240A es-CO Spanish (Colombia) Spanish Español (Colombia) 1252 850 COL ESO
0x140A es-CR Spanish (Costa Rica) Spanish Español (Costa Rica) 1252 850 CRI ESC
0x1C0A es-DO Spanish (Dominican Republic) Spanish Español (República Dominicana) 1252 850 DOM ESD
0x300A es-EC Spanish (Ecuador) Spanish Español (Ecuador) 1252 850 ECU ESF
0x440A es-SV Spanish (El Salvador) Spanish Español (El Salvador) 1252 850 SLV ESE
0x100A es-GT Spanish (Guatemala) Spanish Español (Guatemala) 1252 850 GTM ESG
0x480A es-HN Spanish (Honduras) Spanish Español (Honduras) 1252 850 HND ESH
0x080A es-MX Spanish (Mexico) Spanish Español (México) 1252 850 MEX ESM
0x4C0A es-NI Spanish (Nicaragua) Spanish Español (Nicaragua) 1252 850 NIC ESI
0x180A es-PA Spanish (Panama) Spanish Español (Panamá) 1252 850 PAN ESA
0x3C0A es-PY Spanish (Paraguay) Spanish Español (Paraguay) 1252 850 PRY ESZ
0x280A es-PE Spanish (Peru) Spanish Español (Perú) 1252 850 PER ESR
0x500A es-PR Spanish (Puerto Rico) Spanish Español (Puerto Rico) 1252 850 PRI ESU
0x0C0A es-ES Spanish (Spain) Spanish español (España) 1252 850 ESP ESN
0x540A es-US Spanish (United States) Spanish Español (Estados Unidos) 1252 850 USA EST
0x380A es-UY Spanish (Uruguay) Spanish Español (Uruguay) 1252 850 URY ESY
0x200A es-VE Spanish (Venezuela) Spanish Español (Republica Bolivariana de Venezuela) 1252 850 VEN ESV
0x001D sv Swedish Swedish svenska 1252 850 SWE SVE
0x081D sv-FI Swedish (Finland) Swedish svenska (Finland) 1252 850 FIN SVF
0x041D sv-SE Swedish (Sweden) Swedish svenska (Sverige) 1252 850 SWE SVE
0x005A syr Syriac‎ Syriac ܣܘܪܝܝܐ‏ 0 1 SYR SYR
0x045A syr-SY Syriac (Syria)‎ Syriac ܣܘܪܝܝܐ (سوريا)‏ 0 1 SYR SYR
0x0428 tg-Cyrl-TJ Tajik (Cyrillic, Tajikistan) Tajik (Cyrillic) Тоҷикӣ (Тоҷикистон) 1251 866 TAJ TAJ
0x085F tzm-Latn-DZ Tamazight (Latin, Algeria) Tamazight (Latin) Tamazight (Djazaïr) 1252 850 DZA TZM
0x0049 ta Tamil Tamil தமிழ் 0 1 IND TAM
0x0449 ta-IN Tamil (India) Tamil தமிழ் (இந்தியா) 0 1 IND TAM
0x0044 tt Tatar Tatar Татар 1251 866 RUS TTT
0x0444 tt-RU Tatar (Russia) Tatar Татар (Россия) 1251 866 RUS TTT
0x004A te Telugu Telugu తెలుగు 0 1 IND TEL
0x044A te-IN Telugu (India) Telugu తెలుగు (భారత దేశం) 0 1 IND TEL
0x001E th Thai Thai ไทย 874 874 THA THA
0x041E th-TH Thai (Thailand) Thai ไทย (ไทย) 874 874 THA THA
0x0451 bo-CN Tibetan (PRC) Tibetan བོད་ཡིག (ཀྲུང་ཧྭ་མི་དམངས་སྤྱི་མཐུན་རྒྱལ་ཁབ།) 0 1 CHN BOB
0x001F tr Turkish Turkish Türkçe 1254 857 TUR TRK
0x041F tr-TR Turkish (Turkey) Turkish Türkçe (Türkiye) 1254 857 TUR TRK
0x0442 tk-TM Turkmen (Turkmenistan) Turkmen türkmençe (Türkmenistan) 1250 852 TKM TUK
0x0480 ug-CN Uighur (PRC) Uighur ئۇيغۇر يېزىقى (جۇڭخۇا خەلق جۇمھۇرىيىتى) 1256 720 CHN UIG
0x0022 uk Ukrainian Ukrainian україньска 1251 866 UKR UKR
0x0422 uk-UA Ukrainian (Ukraine) Ukrainian україньска (Україна) 1251 866 UKR UKR
0x042E wen-DE Upper Sorbian (Germany) Upper Sorbian hornjoserbšćina (Němska) 1252 850 GER HSB
0x0020 ur Urdu‎ Urdu اُردو‏ 1256 720 PAK URD
0x0420 ur-PK Urdu (Islamic Republic of Pakistan)‎ Urdu اُردو (پاکستان)‏ 1256 720 PAK URD
0x0043 uz Uzbek Uzbek (Latin) U'zbek 1254 857 UZB UZB
0x0843 uz-Cyrl-UZ Uzbek (Cyrillic, Uzbekistan) Uzbek (Cyrillic) Ўзбек (Ўзбекистон) 1251 866 UZB UZB
0x0443 uz-Latn-UZ Uzbek (Latin, Uzbekistan) Uzbek (Latin) U'zbek (U'zbekiston Respublikasi) 1254 857 UZB UZB
0x002A vi Vietnamese Vietnamese Tiếng Việt 1258 1258 VNM VIT
0x042A vi-VN Vietnamese (Vietnam) Vietnamese Tiếng Việt (Việt Nam) 1258 1258 VNM VIT
0x0452 cy-GB Welsh (United Kingdom) Welsh Cymraeg (y Deyrnas Unedig) 1252 850 GBR CYM
0x0488 wo-SN Wolof (Senegal) Wolof Wolof (Sénégal) 1252 850 SEN WOL
0x0485 sah-RU Yakut (Russia) Yakut саха (Россия) 1251 866 RUS SAH
0x0478 ii-CN Yi (PRC) Yi ꆈꌠꁱꂷ (ꍏꉸꏓꂱꇭꉼꇩ) 0 1 CHN III
0x046A yo-NG Yoruba (Nigeria) Yoruba Yoruba (Nigeria) 1252 437 NGA YOR

* Abbreviated name of the country or region. This information can be retrieved by a call to the GetLocaleInfo() API with LCTYPE set to SABBREVCTRYNAME.

** Abbreviated name of the language. This information can be retrieved by a call to the GetLocaleInfo() API with LCTYPE set to SABBREVLANGNAME .

Top of pageTop of page

About NLSWeb

How NLSWeb tool was written

NLSWeb originated as a reference tool for testers. When an application is tested to comply to local conventions (defined by user locale), may be handy to have a perfect sample. The etalon can be found by reading the NLS settings from the operating system NLS API. But the most complete information is available under Windows 2000 only - while it may be required when tests are running on Windows 95/98 or Windows Me.

The solution was found: collect the information on a Windows 2000 server and display it to everybody interested through a Web page. No data is collected on the client: perfect NLS information is not related on the platform where the test is run. On the server side, on the other hand, a lot of work has to be done. An ASP page was written.

The information about NLS support is collected at run time, showing the most current status of NLS data on the server. Win32 NLS API is broader then NLS support of VBScript or JavaScript; to get access to those functions, the ASP calls a server-side ATL control. This control calls NLS API when an application is started on the server. When the server running NLSWeb is updated with OS having broader language support the users get the updated information automatically.

NLS data fits well into tree structure of XML; this format leaves room for future expansion if NLS API grows; it is easily built and formatted. The drawback of XML format - it is not supported by all browsers, and those supporting it may be limited in formatting capabilities. That's why NLSWeb receives XML data from the ATL control, formats it using XSL filters, and sends HTML data to the client.

Normally, language-specific information is required for one language at a time; ATL control running on our page collects information for all languages. To keep the user from drawning in all that data, while providing an easy way to access any language information, the ASP used two XSL filters. First - the default one - formats the start page, showing a list of locales that server supports. The second, single-language filter , formats a language-specific page; it receives a single - language subset of the XML data that ATL.

The data sent is multi-lingual and encoded in UTF-8. Certain problems may show up when multi-lingual data is displayed on non-multilingual platforms. To resolve some of those problems, a Unicode font was created from Sylfaen font supplied with Microsoft Windows 2000. This font is embedded into the output HTML, so that you see less "default glyphs" (result of system's failure to find a symbol to display text) in the output. However, this solution works only with Microsoft Internet Explorer 4.0 or better. For more information on this technique and for the tool that generates Web fonts, check the link: http://www.microsoft.com/typography/web/embedding/weft3/default.htm.


Top of pageTop of page