37 { 0x0004,
L"zh-CHS" },
101 { 0x0401,
L"ar-SA" },
102 { 0x0402,
L"bg-BG" },
103 { 0x0403,
L"ca-ES" },
104 { 0x0404,
L"zh-TW" },
105 { 0x0405,
L"cs-CZ" },
106 { 0x0406,
L"da-DK" },
107 { 0x0407,
L"de-DE" },
108 { 0x0408,
L"el-GR" },
109 { 0x0409,
L"en-US" },
110 { 0x040B,
L"fi-FI" },
111 { 0x040C,
L"fr-FR" },
112 { 0x040D,
L"he-IL" },
113 { 0x040E,
L"hu-HU" },
114 { 0x040F,
L"is-IS" },
115 { 0x0410,
L"it-IT" },
116 { 0x0411,
L"ja-JP" },
117 { 0x0412,
L"ko-KR" },
118 { 0x0413,
L"nl-NL" },
119 { 0x0414,
L"nb-NO" },
120 { 0x0415,
L"pl-PL" },
121 { 0x0416,
L"pt-BR" },
122 { 0x0418,
L"ro-RO" },
123 { 0x0419,
L"ru-RU" },
124 { 0x041A,
L"hr-HR" },
125 { 0x041B,
L"sk-SK" },
126 { 0x041C,
L"sq-AL" },
127 { 0x041D,
L"sv-SE" },
128 { 0x041E,
L"th-TH" },
129 { 0x041F,
L"tr-TR" },
130 { 0x0420,
L"ur-PK" },
131 { 0x0421,
L"id-ID" },
132 { 0x0422,
L"uk-UA" },
133 { 0x0423,
L"be-BY" },
134 { 0x0424,
L"sl-SI" },
135 { 0x0425,
L"et-EE" },
136 { 0x0426,
L"lv-LV" },
137 { 0x0427,
L"lt-LT" },
138 { 0x0429,
L"fa-IR" },
139 { 0x042A,
L"vi-VN" },
140 { 0x042B,
L"hy-AM" },
141 { 0x042C,
L"az-AZ-Latn" },
142 { 0x042D,
L"eu-ES" },
143 { 0x042F,
L"mk-MK" },
144 { 0x0432,
L"tn-ZA" },
145 { 0x0434,
L"xh-ZA" },
146 { 0x0435,
L"zu-ZA" },
147 { 0x0436,
L"af-ZA" },
148 { 0x0437,
L"ka-GE" },
149 { 0x0438,
L"fo-FO" },
150 { 0x0439,
L"hi-IN" },
151 { 0x043A,
L"mt-MT" },
152 { 0x043B,
L"se-NO" },
153 { 0x043E,
L"ms-MY" },
154 { 0x043F,
L"kk-KZ" },
155 { 0x0440,
L"ky-KG" },
156 { 0x0441,
L"sw-KE" },
157 { 0x0443,
L"uz-UZ-Latn" },
158 { 0x0444,
L"tt-RU" },
159 { 0x0445,
L"bn-IN" },
160 { 0x0446,
L"pa-IN" },
161 { 0x0447,
L"gu-IN" },
162 { 0x0449,
L"ta-IN" },
163 { 0x044A,
L"te-IN" },
164 { 0x044B,
L"kn-IN" },
165 { 0x044C,
L"ml-IN" },
166 { 0x044E,
L"mr-IN" },
167 { 0x044F,
L"sa-IN" },
168 { 0x0450,
L"mn-MN" },
169 { 0x0452,
L"cy-GB" },
170 { 0x0456,
L"gl-ES" },
171 { 0x0457,
L"kok-IN" },
172 { 0x045A,
L"syr-SY" },
173 { 0x0465,
L"div-MV" },
174 { 0x046B,
L"quz-BO" },
175 { 0x046C,
L"ns-ZA" },
176 { 0x0481,
L"mi-NZ" },
177 { 0x0801,
L"ar-IQ" },
178 { 0x0804,
L"zh-CN" },
179 { 0x0807,
L"de-CH" },
180 { 0x0809,
L"en-GB" },
181 { 0x080A,
L"es-MX" },
182 { 0x080C,
L"fr-BE" },
183 { 0x0810,
L"it-CH" },
184 { 0x0813,
L"nl-BE" },
185 { 0x0814,
L"nn-NO" },
186 { 0x0816,
L"pt-PT" },
187 { 0x081A,
L"sr-SP-Latn" },
188 { 0x081D,
L"sv-FI" },
189 { 0x082C,
L"az-AZ-Cyrl" },
190 { 0x083B,
L"se-SE" },
191 { 0x083E,
L"ms-BN" },
192 { 0x0843,
L"uz-UZ-Cyrl" },
193 { 0x086B,
L"quz-EC" },
194 { 0x0C01,
L"ar-EG" },
195 { 0x0C04,
L"zh-HK" },
196 { 0x0C07,
L"de-AT" },
197 { 0x0C09,
L"en-AU" },
198 { 0x0C0A,
L"es-ES" },
199 { 0x0C0C,
L"fr-CA" },
200 { 0x0C1A,
L"sr-SP-Cyrl" },
201 { 0x0C3B,
L"se-FI" },
202 { 0x0C6B,
L"quz-PE" },
203 { 0x1001,
L"ar-LY" },
204 { 0x1004,
L"zh-SG" },
205 { 0x1007,
L"de-LU" },
206 { 0x1009,
L"en-CA" },
207 { 0x100A,
L"es-GT" },
208 { 0x100C,
L"fr-CH" },
209 { 0x101A,
L"hr-BA" },
210 { 0x103B,
L"smj-NO" },
211 { 0x1401,
L"ar-DZ" },
212 { 0x1404,
L"zh-MO" },
213 { 0x1407,
L"de-LI" },
214 { 0x1409,
L"en-NZ" },
215 { 0x140A,
L"es-CR" },
216 { 0x140C,
L"fr-LU" },
217 { 0x141A,
L"bs-BA-Latn" },
218 { 0x143B,
L"smj-SE" },
219 { 0x1801,
L"ar-MA" },
220 { 0x1809,
L"en-IE" },
221 { 0x180A,
L"es-PA" },
222 { 0x180C,
L"fr-MC" },
223 { 0x181A,
L"sr-BA-Latn" },
224 { 0x183B,
L"sma-NO" },
225 { 0x1C01,
L"ar-TN" },
226 { 0x1C09,
L"en-ZA" },
227 { 0x1C0A,
L"es-DO" },
228 { 0x1C1A,
L"sr-BA-Cyrl" },
229 { 0x1C3B,
L"sma-SE" },
230 { 0x2001,
L"ar-OM" },
231 { 0x2009,
L"en-JM" },
232 { 0x200A,
L"es-VE" },
233 { 0x203B,
L"sms-FI" },
234 { 0x2401,
L"ar-YE" },
235 { 0x2409,
L"en-CB" },
236 { 0x240A,
L"es-CO" },
237 { 0x243B,
L"smn-FI" },
238 { 0x2801,
L"ar-SY" },
239 { 0x2809,
L"en-BZ" },
240 { 0x280A,
L"es-PE" },
241 { 0x2C01,
L"ar-JO" },
242 { 0x2C09,
L"en-TT" },
243 { 0x2C0A,
L"es-AR" },
244 { 0x3001,
L"ar-LB" },
245 { 0x3009,
L"en-ZW" },
246 { 0x300A,
L"es-EC" },
247 { 0x3401,
L"ar-KW" },
248 { 0x3409,
L"en-PH" },
249 { 0x340A,
L"es-CL" },
250 { 0x3801,
L"ar-AE" },
251 { 0x380A,
L"es-UY" },
252 { 0x3C01,
L"ar-BH" },
253 { 0x3C0A,
L"es-PY" },
254 { 0x4001,
L"ar-QA" },
255 { 0x400A,
L"es-BO" },
256 { 0x440A,
L"es-SV" },
257 { 0x480A,
L"es-HN" },
258 { 0x4C0A,
L"es-NI" },
259 { 0x500A,
L"es-PR" },
260 { 0x7C04,
L"zh-CHT" },
291 {
L"az-az-cyrl" , 155 },
292 {
L"az-az-latn" , 107 },
298 {
L"bs-ba-latn" , 183 },
458 {
L"sr-ba-cyrl" , 194 },
459 {
L"sr-ba-latn" , 189 },
460 {
L"sr-sp-cyrl" , 166 },
461 {
L"sr-sp-latn" , 153 },
485 {
L"uz-uz-cyrl" , 158 },
486 {
L"uz-uz-latn" , 123 },
515 return localeNamesIndex[middle].index;
555 if (localeName ==
nullptr)
603 return (
int)
count + 1;
_Check_return_ int __cdecl __ascii_wcsnicmp(_In_reads_or_z_(count) const wchar_t *lhs, _In_reads_or_z_(count) const wchar_t *rhs, _In_ size_t count)
GLuint GLuint GLsizei count
GLdouble GLdouble GLdouble GLdouble top
static int GetTableIndexFromLocaleName(const wchar_t *localeName)
LCID __cdecl __acrt_DownlevelLocaleNameToLCID(LPCWSTR localeName)
int __cdecl __acrt_DownlevelLCIDToLocaleName(LCID lcid, LPWSTR outLocaleName, int cchLocaleName)
static int GetTableIndexFromLcid(LCID lcid)
#define wcscpy_s(d, l, s)
static const LocaleNameIndex LocaleNameToIndexTable[]
static const LcidToLocaleName LcidToLocaleNameTable[]
#define LOCALE_NAME_MAX_LENGTH
#define LOCALE_USER_DEFAULT
#define LOCALE_SYSTEM_DEFAULT
size_t __cdecl wcsnlen(wchar_t const *const string, size_t const maximum_count)