https://git.reactos.org/?p=reactos.git;a=commitdiff;h=88891d2ce70f2837c2d6a…
commit 88891d2ce70f2837c2d6a372001cd1ab535daf95
Author: Hermès Bélusca-Maïto <hermes.belusca-maito(a)reactos.org>
AuthorDate: Fri Feb 9 22:33:30 2024 +0100
Commit: Hermès Bélusca-Maïto <hermes.belusca-maito(a)reactos.org>
CommitDate: Fri Feb 9 22:33:30 2024 +0100
[SETUPLIB][USETUP] Convert MUI_LANGUAGE GeoID values to numbers.
---
base/setup/lib/mui.c | 2 +-
base/setup/lib/mui.h | 6 +-
base/setup/lib/muilanguages.h | 288 +++++++++++++++++++++---------------------
base/setup/lib/settings.c | 22 +++-
base/setup/lib/settings.h | 2 +-
5 files changed, 165 insertions(+), 155 deletions(-)
diff --git a/base/setup/lib/mui.c b/base/setup/lib/mui.c
index 9d677f8d307..48af986e908 100644
--- a/base/setup/lib/mui.c
+++ b/base/setup/lib/mui.c
@@ -100,7 +100,7 @@ MUIGetOEMCodePage(
return MUILanguageList[lngIndex].OEMCPage;
}
-PCWSTR
+GEOID
MUIGetGeoID(
IN PCWSTR LanguageId)
{
diff --git a/base/setup/lib/mui.h b/base/setup/lib/mui.h
index fe2f206f659..219f69e551a 100644
--- a/base/setup/lib/mui.h
+++ b/base/setup/lib/mui.h
@@ -25,6 +25,8 @@ typedef struct
KLID LayoutID; // Layout ID (like 0x00000409)
} MUI_LAYOUTS;
+typedef ULONG GEOID; // See winnls.h
+
typedef struct
{
PCWSTR LanguageID;
@@ -32,7 +34,7 @@ typedef struct
UINT OEMCPage;
UINT MACCPage;
PCWSTR LanguageDescriptor;
- PCWSTR GeoID;
+ GEOID GeoID;
const MUI_SUBFONT* MuiSubFonts;
const MUI_LAYOUTS* MuiLayouts;
} MUI_LANGUAGE;
@@ -50,7 +52,7 @@ UINT
MUIGetOEMCodePage(
IN PCWSTR LanguageId);
-PCWSTR
+GEOID
MUIGetGeoID(
IN PCWSTR LanguageId);
diff --git a/base/setup/lib/muilanguages.h b/base/setup/lib/muilanguages.h
index f4871f0c7e8..636c8468f34 100644
--- a/base/setup/lib/muilanguages.h
+++ b/base/setup/lib/muilanguages.h
@@ -411,432 +411,432 @@
const MUI_LANGUAGE MUILanguageList[] =
{
- /* Lang ID, ANSI CP, OEM CP, MAC CP, Language Name, GeoID, Fonts, KB Layouts */
+ /* Lang ID, ANSI CP, OEM CP, MAC CP, Language Name, GeoID, Fonts, KB Layouts */
#ifdef LANGUAGE_AF_ZA
- {L"00000436", 1252, 850, 10000, L"Afrikaans", L"209",
LatinFonts, afZALayouts},
+ {L"00000436", 1252, 850, 10000, L"Afrikaans", 209, LatinFonts,
afZALayouts},
#endif
#ifdef LANGUAGE_SQ_AL
- {L"0000041C", 1250, 852, 10029, L"Albanian (Albania)",
L"6", LatinFonts, sqALLayouts},
+ {L"0000041C", 1250, 852, 10029, L"Albanian (Albania)", 6,
LatinFonts, sqALLayouts},
#endif
#ifdef LANGUAGE_AR_SA
- {L"00000401", 1256, 720, 10004, L"Arabic (Saudi Arabia)",
L"205", UnicodeFonts, arSALayouts},
+ {L"00000401", 1256, 720, 10004, L"Arabic (Saudi Arabia)", 205,
UnicodeFonts, arSALayouts},
#endif
#ifdef LANGUAGE_AR_IQ
- {L"00000801", 1256, 720, 10004, L"Arabic (Iraq)",
L"121", UnicodeFonts, arIQLayouts},
+ {L"00000801", 1256, 720, 10004, L"Arabic (Iraq)", 121,
UnicodeFonts, arIQLayouts},
#endif
#ifdef LANGUAGE_AR_EG
- {L"00000C01", 1256, 720, 10004, L"Arabic (Egypt)",
L"67", UnicodeFonts, arEGLayouts},
+ {L"00000C01", 1256, 720, 10004, L"Arabic (Egypt)", 67,
UnicodeFonts, arEGLayouts},
#endif
#ifdef LANGUAGE_AR_LY
- {L"00001001", 1256, 720, 10004, L"Arabic (Libya)",
L"148", UnicodeFonts, arLYLayouts},
+ {L"00001001", 1256, 720, 10004, L"Arabic (Libya)", 148,
UnicodeFonts, arLYLayouts},
#endif
#ifdef LANGUAGE_AR_DZ
- {L"00001401", 1256, 720, 10004, L"Arabic (Algeria)",
L"4", UnicodeFonts, arDZLayouts},
+ {L"00001401", 1256, 720, 10004, L"Arabic (Algeria)", 4,
UnicodeFonts, arDZLayouts},
#endif
#ifdef LANGUAGE_AR_MA
- {L"00001801", 1256, 720, 10004, L"Arabic (Morocco)",
L"149", UnicodeFonts, arMALayouts},
+ {L"00001801", 1256, 720, 10004, L"Arabic (Morocco)", 149,
UnicodeFonts, arMALayouts},
#endif
#ifdef LANGUAGE_AR_TN
- {L"00001C01", 1256, 720, 10004, L"Arabic (Tunisia)",
L"234", UnicodeFonts, arTNLayouts},
+ {L"00001C01", 1256, 720, 10004, L"Arabic (Tunisia)", 234,
UnicodeFonts, arTNLayouts},
#endif
#ifdef LANGUAGE_AR_OM
- {L"00002001", 1256, 720, 10004, L"Arabic (Oman)",
L"164", UnicodeFonts, arOMLayouts},
+ {L"00002001", 1256, 720, 10004, L"Arabic (Oman)", 164,
UnicodeFonts, arOMLayouts},
#endif
#ifdef LANGUAGE_AR_YE
- {L"00002401", 1256, 720, 10004, L"Arabic (Yemen)",
L"261", UnicodeFonts, arYELayouts},
+ {L"00002401", 1256, 720, 10004, L"Arabic (Yemen)", 261,
UnicodeFonts, arYELayouts},
#endif
#ifdef LANGUAGE_AR_SY
- {L"00002801", 1256, 720, 10004, L"Arabic (Syria)",
L"222", UnicodeFonts, arSYLayouts},
+ {L"00002801", 1256, 720, 10004, L"Arabic (Syria)", 222,
UnicodeFonts, arSYLayouts},
#endif
#ifdef LANGUAGE_AR_JO
- {L"00002C01", 1256, 720, 10004, L"Arabic (Jordan)",
L"126", UnicodeFonts, arJOLayouts},
+ {L"00002C01", 1256, 720, 10004, L"Arabic (Jordan)", 126,
UnicodeFonts, arJOLayouts},
#endif
#ifdef LANGUAGE_AR_LB
- {L"00003001", 1256, 720, 10004, L"Arabic (Lebanon)",
L"139", UnicodeFonts, arLBLayouts},
+ {L"00003001", 1256, 720, 10004, L"Arabic (Lebanon)", 139,
UnicodeFonts, arLBLayouts},
#endif
#ifdef LANGUAGE_AR_KW
- {L"00003401", 1256, 720, 10004, L"Arabic (Kuwait)",
L"136", UnicodeFonts, arKWLayouts},
+ {L"00003401", 1256, 720, 10004, L"Arabic (Kuwait)", 136,
UnicodeFonts, arKWLayouts},
#endif
#ifdef LANGUAGE_AR_AE
- {L"00003801", 1256, 720, 10004, L"Arabic (U.A.E.)",
L"224", UnicodeFonts, arAELayouts},
+ {L"00003801", 1256, 720, 10004, L"Arabic (U.A.E.)", 224,
UnicodeFonts, arAELayouts},
#endif
#ifdef LANGUAGE_AR_BH
- {L"00003C01", 1256, 720, 10004, L"Arabic (Bahrain)",
L"17", UnicodeFonts, arBHLayouts},
+ {L"00003C01", 1256, 720, 10004, L"Arabic (Bahrain)", 17,
UnicodeFonts, arBHLayouts},
#endif
#ifdef LANGUAGE_AR_QA
- {L"00004001", 1256, 720, 10004, L"Arabic (Qatar)",
L"197", UnicodeFonts, arQALayouts},
+ {L"00004001", 1256, 720, 10004, L"Arabic (Qatar)", 197,
UnicodeFonts, arQALayouts},
#endif
#ifdef LANGUAGE_HY_AM
- {L"0000042B", 0, 1, 2, L"Armenian", L"7", UnicodeFonts,
hyAMLayouts},
+ {L"0000042B", 0, 1, 2, L"Armenian", 7, UnicodeFonts,
hyAMLayouts},
#endif
#ifdef LANGUAGE_AZ_AZ
- {L"0000082C", 1251, 866, 10007, L"Azeri (Cyrillic)",
L"5", CyrillicFonts, azAZLayouts},
+ {L"0000082C", 1251, 866, 10007, L"Azeri (Cyrillic)", 5,
CyrillicFonts, azAZLayouts},
#endif
#ifdef LANGUAGE_AZ_AZ
- {L"0000042C", 1254, 857, 10081, L"Azeri (Latin)", L"5",
LatinFonts, azAZLayouts},
+ {L"0000042C", 1254, 857, 10081, L"Azeri (Latin)", 5, LatinFonts,
azAZLayouts},
#endif
#ifdef LANGUAGE_EU_ES
- {L"0000042D", 1252, 850, 10000, L"Basque", L"217",
LatinFonts, euESLayouts},
+ {L"0000042D", 1252, 850, 10000, L"Basque", 217, LatinFonts,
euESLayouts},
#endif
#ifdef LANGUAGE_BE_BY
- {L"00000423", 1251, 866, 10007, L"Belarusian", L"29",
CyrillicFonts, beBYLayouts},
+ {L"00000423", 1251, 866, 10007, L"Belarusian", 29, CyrillicFonts,
beBYLayouts},
#endif
#ifdef LANGUAGE_BN_BD
- {L"00000845", 0, 1, 2, L"Bengali (Bangladesh)", L"23",
UnicodeFonts, bnBDLayouts},
+ {L"00000845", 0, 1, 2, L"Bengali (Bangladesh)", 23, UnicodeFonts,
bnBDLayouts},
#endif
#ifdef LANGUAGE_BN_IN
- {L"00000445", 0, 1, 2, L"Bengali (India)", L"113",
UnicodeFonts, bnINLayouts},
+ {L"00000445", 0, 1, 2, L"Bengali (India)", 113, UnicodeFonts,
bnINLayouts},
#endif
#ifdef LANGUAGE_BG_BG
- {L"00000402", 1251, 866, 10007, L"Bulgarian", L"35",
CyrillicFonts, bgBGLayouts},
+ {L"00000402", 1251, 866, 10007, L"Bulgarian", 35, CyrillicFonts,
bgBGLayouts},
#endif
#ifdef LANGUAGE_MY_MM
- {L"00000455", 0, 1, 2, L"Burmese", L"1", UnicodeFonts,
myMMLayouts},
+ {L"00000455", 0, 1, 2, L"Burmese", 1, UnicodeFonts,
myMMLayouts},
#endif
#ifdef LANGUAGE_CA_ES
- {L"00000403", 1252, 850, 10000, L"Catalan", L"217",
LatinFonts, caESLayouts},
+ {L"00000403", 1252, 850, 10000, L"Catalan", 217, LatinFonts,
caESLayouts},
#endif
#ifdef LANGUAGE_ZH_TW
- {L"00000404", 950, 950, 10008, L"Chinese (Taiwan)",
L"237", ChineseTraditionalFonts, zhTWLayouts},
+ {L"00000404", 950, 950, 10008, L"Chinese (Taiwan)", 237,
ChineseTraditionalFonts, zhTWLayouts},
#endif
#ifdef LANGUAGE_ZH_CN
- {L"00000804", 936, 936, 10008, L"Chinese (PRC)", L"45",
ChineseSimplifiedFonts, zhCNLayouts},
+ {L"00000804", 936, 936, 10008, L"Chinese (PRC)", 45,
ChineseSimplifiedFonts, zhCNLayouts},
#endif
#ifdef LANGUAGE_ZH_HK
- {L"00000C04", 950, 950, 10008, L"Chinese (Hong Kong S.A.R.)",
L"104", ChineseTraditionalFonts, zhHKLayouts},
+ {L"00000C04", 950, 950, 10008, L"Chinese (Hong Kong S.A.R.)",
104, ChineseTraditionalFonts, zhHKLayouts},
#endif
#ifdef LANGUAGE_ZH_SG
- {L"00001004", 936, 936, 10008, L"Chinese (Singapore)",
L"215", ChineseSimplifiedFonts, zhSGLayouts},
+ {L"00001004", 936, 936, 10008, L"Chinese (Singapore)", 215,
ChineseSimplifiedFonts, zhSGLayouts},
#endif
#ifdef LANGUAGE_ZH_MO
- {L"00001404", 950, 950, 10002, L"Chinese (Macau S.A.R.)",
L"151", ChineseTraditionalFonts, zhMOLayouts},
+ {L"00001404", 950, 950, 10002, L"Chinese (Macau S.A.R.)", 151,
ChineseTraditionalFonts, zhMOLayouts},
#endif
#ifdef LANGUAGE_HR_HR
- {L"0000041A", 1250, 852, 10029, L"Croatian", L"108",
LatinFonts, hrHRLayouts},
+ {L"0000041A", 1250, 852, 10029, L"Croatian", 108, LatinFonts,
hrHRLayouts},
#endif
#ifdef LANGUAGE_CS_CZ
- {L"00000405", 1250, 852, 10029, L"Czech", L"75",
LatinFonts, csCZLayouts},
+ {L"00000405", 1250, 852, 10029, L"Czech", 75, LatinFonts,
csCZLayouts},
#endif
#ifdef LANGUAGE_DA_DK
- {L"00000406", 1252, 850, 10000, L"Danish", L"61",
LatinFonts, daDKLayouts},
+ {L"00000406", 1252, 850, 10000, L"Danish", 61, LatinFonts,
daDKLayouts},
#endif
#ifdef LANGUAGE_DV_MV
- {L"00000465", 0, 1, 2, L"Dhivehi (Maldives)", L"165",
UnicodeFonts, dvMVLayouts},
+ {L"00000465", 0, 1, 2, L"Dhivehi (Maldives)", 165, UnicodeFonts,
dvMVLayouts},
#endif
#ifdef LANGUAGE_NL_NL
- {L"00000413", 1252, 850, 10000, L"Dutch (Netherlands)",
L"176", LatinFonts, nlNLLayouts},
+ {L"00000413", 1252, 850, 10000, L"Dutch (Netherlands)", 176,
LatinFonts, nlNLLayouts},
#endif
#ifdef LANGUAGE_NL_BE
- {L"00000813", 1252, 850, 10000, L"Dutch (Belgium)",
L"21", LatinFonts, nlBELayouts},
+ {L"00000813", 1252, 850, 10000, L"Dutch (Belgium)", 21,
LatinFonts, nlBELayouts},
#endif
#ifdef LANGUAGE_EN_US
- {L"00000409", 1252, 437, 10000, L"English (United States)",
L"244", LatinFonts, enUSLayouts},
+ {L"00000409", 1252, 437, 10000, L"English (United States)", 244,
LatinFonts, enUSLayouts},
#endif
#ifdef LANGUAGE_EN_GB
- {L"00000809", 1252, 850, 10000, L"English (United Kingdom)",
L"242", LatinFonts, enGBLayouts},
+ {L"00000809", 1252, 850, 10000, L"English (United Kingdom)", 242,
LatinFonts, enGBLayouts},
#endif
#ifdef LANGUAGE_EN_AU
- {L"00000C09", 1252, 850, 10000, L"English (Australia)",
L"12", LatinFonts, enAULayouts},
+ {L"00000C09", 1252, 850, 10000, L"English (Australia)", 12,
LatinFonts, enAULayouts},
#endif
#ifdef LANGUAGE_EN_CA
- {L"00001009", 1252, 850, 10000, L"English (Canada)",
L"39", LatinFonts, enCALayouts},
+ {L"00001009", 1252, 850, 10000, L"English (Canada)", 39,
LatinFonts, enCALayouts},
#endif
#ifdef LANGUAGE_EN_NZ
- {L"00001409", 1252, 850, 10000, L"English (New Zealand)",
L"183", LatinFonts, enNZLayouts},
+ {L"00001409", 1252, 850, 10000, L"English (New Zealand)", 183,
LatinFonts, enNZLayouts},
#endif
#ifdef LANGUAGE_EN_IE
- {L"00001809", 1252, 850, 10000, L"English (Ireland)",
L"68", LatinFonts, enIELayouts},
+ {L"00001809", 1252, 850, 10000, L"English (Ireland)", 68,
LatinFonts, enIELayouts},
#endif
#ifdef LANGUAGE_EN_ZA
- {L"00001C09", 1252, 437, 10000, L"English (South Africa)",
L"209", LatinFonts, enZALayouts},
+ {L"00001C09", 1252, 437, 10000, L"English (South Africa)", 209,
LatinFonts, enZALayouts},
#endif
#ifdef LANGUAGE_EN_JM
- {L"00002009", 1252, 850, 10000, L"English (Jamaica)",
L"124", LatinFonts, enJMLayouts},
+ {L"00002009", 1252, 850, 10000, L"English (Jamaica)", 124,
LatinFonts, enJMLayouts},
#endif
#ifdef LANGUAGE_EN_CB
- {L"00002409", 1252, 850, 10000, L"English (Caribbean)",
L"1", LatinFonts, enCBLayouts},
+ {L"00002409", 1252, 850, 10000, L"English (Caribbean)", 1,
LatinFonts, enCBLayouts},
#endif
#ifdef LANGUAGE_EN_BZ
- {L"00002809", 1252, 850, 10000, L"English (Belize)",
L"24", LatinFonts, enBZLayouts},
+ {L"00002809", 1252, 850, 10000, L"English (Belize)", 24,
LatinFonts, enBZLayouts},
#endif
#ifdef LANGUAGE_EN_TT
- {L"00002C09", 1252, 850, 10000, L"English (Trinidad)",
L"225", LatinFonts, enTTLayouts},
+ {L"00002C09", 1252, 850, 10000, L"English (Trinidad)", 225,
LatinFonts, enTTLayouts},
#endif
#ifdef LANGUAGE_EN_ZW
- {L"00003009", 1252, 437, 10000, L"English (Zimbabwe)",
L"264", LatinFonts, enZWLayouts},
+ {L"00003009", 1252, 437, 10000, L"English (Zimbabwe)", 264,
LatinFonts, enZWLayouts},
#endif
#ifdef LANGUAGE_EN_PH
- {L"00003409", 1252, 437, 10000, L"English (Philippines)",
L"201", LatinFonts, enPHLayouts},
+ {L"00003409", 1252, 437, 10000, L"English (Philippines)", 201,
LatinFonts, enPHLayouts},
#endif
#ifdef LANGUAGE_EO_AA
- {L"0000048F", 1252, 437, 10000, L"Esperanto", L"1",
LatinFonts, eoAALayouts},
+ {L"0000048F", 1252, 437, 10000, L"Esperanto", 1, LatinFonts,
eoAALayouts},
#endif
#ifdef LANGUAGE_ET_EE
- {L"00000425", 1252, 775, 10029, L"Estonian", L"70",
LatinFonts, etEELayouts},
+ {L"00000425", 1252, 775, 10029, L"Estonian", 70, LatinFonts,
etEELayouts},
#endif
#ifdef LANGUAGE_FO_FO
- {L"00000438", 1252, 850, 10079, L"Faeroese", L"81",
LatinFonts, foFOLayouts},
+ {L"00000438", 1252, 850, 10079, L"Faeroese", 81, LatinFonts,
foFOLayouts},
#endif
#ifdef LANGUAGE_FA_IR
- {L"00000429", 1256, 720, 10004, L"Farsi", L"116",
UnicodeFonts, faIRLayouts},
+ {L"00000429", 1256, 720, 10004, L"Farsi", 116, UnicodeFonts,
faIRLayouts},
#endif
#ifdef LANGUAGE_FI_FI
- {L"0000040B", 1252, 850, 10000, L"Finnish", L"77",
LatinFonts, fiFILayouts},
+ {L"0000040B", 1252, 850, 10000, L"Finnish", 77, LatinFonts,
fiFILayouts},
#endif
#ifdef LANGUAGE_FR_CA
- {L"00000C0C", 1252, 850, 10000, L"French (Canada)",
L"39", LatinFonts, frCALayouts},
+ {L"00000C0C", 1252, 850, 10000, L"French (Canada)", 39,
LatinFonts, frCALayouts},
#endif
#ifdef LANGUAGE_FR_FR
- {L"0000040C", 1252, 850, 10000, L"French (France)",
L"84", LatinFonts, frFRLayouts},
+ {L"0000040C", 1252, 850, 10000, L"French (France)", 84,
LatinFonts, frFRLayouts},
#endif
#ifdef LANGUAGE_FR_BE
- {L"0000080C", 1252, 850, 10000, L"French (Belgium)",
L"21", LatinFonts, frBELayouts},
+ {L"0000080C", 1252, 850, 10000, L"French (Belgium)", 21,
LatinFonts, frBELayouts},
#endif
#ifdef LANGUAGE_FR_CH
- {L"0000100C", 1252, 850, 10000, L"French (Switzerland)",
L"223", LatinFonts, frCHLayouts},
+ {L"0000100C", 1252, 850, 10000, L"French (Switzerland)", 223,
LatinFonts, frCHLayouts},
#endif
#ifdef LANGUAGE_FR_LU
- {L"0000140C", 1252, 850, 10000, L"French (Luxembourg)",
L"147", LatinFonts, frLULayouts},
+ {L"0000140C", 1252, 850, 10000, L"French (Luxembourg)", 147,
LatinFonts, frLULayouts},
#endif
#ifdef LANGUAGE_FR_MC
- {L"0000180C", 1252, 850, 10000, L"French (Monaco)",
L"158", LatinFonts, frMCLayouts},
+ {L"0000180C", 1252, 850, 10000, L"French (Monaco)", 158,
LatinFonts, frMCLayouts},
#endif
#ifdef LANGUAGE_GL_ES
- {L"00000456", 1252, 850, 10000, L"Galician (Spain)",
L"217", LatinFonts, glESLayouts},
+ {L"00000456", 1252, 850, 10000, L"Galician (Spain)", 217,
LatinFonts, glESLayouts},
#endif
#ifdef LANGUAGE_KA_GE
- {L"00000437", 0, 1, 2, L"Georgian", L"88",
UnicodeFonts, kaGELayouts},
+ {L"00000437", 0, 1, 2, L"Georgian", 88, UnicodeFonts,
kaGELayouts},
#endif
#ifdef LANGUAGE_DE_DE
- {L"00000407", 1252, 850, 10000, L"German (Germany)",
L"94", LatinFonts, deDELayouts},
+ {L"00000407", 1252, 850, 10000, L"German (Germany)", 94,
LatinFonts, deDELayouts},
#endif
#ifdef LANGUAGE_DE_CH
- {L"00000807", 1252, 850, 10000, L"German (Switzerland)",
L"223", LatinFonts, deCHLayouts},
+ {L"00000807", 1252, 850, 10000, L"German (Switzerland)", 223,
LatinFonts, deCHLayouts},
#endif
#ifdef LANGUAGE_DE_AT
- {L"00000C07", 1252, 850, 10000, L"German (Austria)",
L"14", LatinFonts, deATLayouts},
+ {L"00000C07", 1252, 850, 10000, L"German (Austria)", 14,
LatinFonts, deATLayouts},
#endif
#ifdef LANGUAGE_DE_LU
- {L"00001007", 1252, 850, 10000, L"German (Luxembourg)",
L"147", LatinFonts, deLULayouts},
+ {L"00001007", 1252, 850, 10000, L"German (Luxembourg)", 147,
LatinFonts, deLULayouts},
#endif
#ifdef LANGUAGE_DE_LI
- {L"00001407", 1252, 850, 10000, L"German (Liechtenstein)",
L"145", LatinFonts, deLILayouts},
+ {L"00001407", 1252, 850, 10000, L"German (Liechtenstein)", 145,
LatinFonts, deLILayouts},
#endif
#ifdef LANGUAGE_EL_GR
- {L"00000408", 1253, 737, 10006, L"Greek", L"98",
GreekFonts, elGRLayouts},
+ {L"00000408", 1253, 737, 10006, L"Greek", 98, GreekFonts,
elGRLayouts},
#endif
#ifdef LANGUAGE_GU_IN
- {L"00000447", 0, 1, 2, L"Gujarati (India)", L"113",
UnicodeFonts, guINLayouts},
+ {L"00000447", 0, 1, 2, L"Gujarati (India)", 113, UnicodeFonts,
guINLayouts},
#endif
#ifdef LANGUAGE_HE_IL
- {L"0000040D", 1255, 862, 10005, L"Hebrew", L"117",
HebrewFonts, heILLayouts},
+ {L"0000040D", 1255, 862, 10005, L"Hebrew", 117, HebrewFonts,
heILLayouts},
#endif
#ifdef LANGUAGE_HI_IN
- {L"00000439", 1252, 437, 10000, L"Hindi", L"113",
HindiFonts, hiINLayouts },
+ {L"00000439", 1252, 437, 10000, L"Hindi", 113, HindiFonts,
hiINLayouts },
#endif
#ifdef LANGUAGE_HU_HU
- {L"0000040E", 1250, 852, 10029, L"Hungarian", L"109",
LatinFonts, huHULayouts},
+ {L"0000040E", 1250, 852, 10029, L"Hungarian", 109, LatinFonts,
huHULayouts},
#endif
#ifdef LANGUAGE_IS_IS
- {L"0000040F", 1252, 850, 10079, L"Icelandic", L"110",
LatinFonts, isISLayouts},
+ {L"0000040F", 1252, 850, 10079, L"Icelandic", 110, LatinFonts,
isISLayouts},
#endif
#ifdef LANGUAGE_ID_ID
- {L"00000421", 1252, 850, 10079, L"Indonesian", L"111",
LatinFonts, idIDLayouts},
+ {L"00000421", 1252, 850, 10079, L"Indonesian", 111, LatinFonts,
idIDLayouts},
#endif
#ifdef LANGUAGE_IT_IT
- {L"00000410", 1252, 850, 10000, L"Italian (Italy)",
L"118", LatinFonts, itITLayouts},
+ {L"00000410", 1252, 850, 10000, L"Italian (Italy)", 118,
LatinFonts, itITLayouts},
#endif
#ifdef LANGUAGE_IT_CH
- {L"00000810", 1252, 850, 10000, L"Italian (Switzerland)",
L"223", LatinFonts, itCHLayouts},
+ {L"00000810", 1252, 850, 10000, L"Italian (Switzerland)", 223,
LatinFonts, itCHLayouts},
#endif
#ifdef LANGUAGE_JA_JP
- {L"00000411", 932, 932, 10001, L"Japanese", L"122",
JapaneseFonts, jaJPLayouts},
+ {L"00000411", 932, 932, 10001, L"Japanese", 122, JapaneseFonts,
jaJPLayouts},
#endif
#ifdef LANGUAGE_KN_IN
- {L"0000044B", 1252, 437, 10079, L"Kannada (India)",
L"113", LatinFonts, knINLayouts},
+ {L"0000044B", 1252, 437, 10079, L"Kannada (India)", 113,
LatinFonts, knINLayouts},
#endif
#ifdef LANGUAGE_KK_KZ
- {L"0000043F", 1251, 866, 10007, L"Kazakh", L"137",
CyrillicFonts, kkKZLayouts},
+ {L"0000043F", 1251, 866, 10007, L"Kazakh", 137, CyrillicFonts,
kkKZLayouts},
#endif
#ifdef LANGUAGE_KOK_IN
- {L"00000457", 0, 437, 2, L"Konkani", L"113",
UnicodeFonts, kokINLayouts},
+ {L"00000457", 0, 437, 2, L"Konkani", 113, UnicodeFonts,
kokINLayouts},
#endif
#ifdef LANGUAGE_KO_KR
- {L"00000412", 949, 949, 10003, L"Korean", L"134",
KoreanFonts, koKRLayouts},
+ {L"00000412", 949, 949, 10003, L"Korean", 134, KoreanFonts,
koKRLayouts},
#endif
#ifdef LANGUAGE_KY_KG
- {L"00000440", 1251, 866, 10007, L"Kyrgyz (Kyrgyzstan)",
L"130", CyrillicFonts, kyKGLayouts},
+ {L"00000440", 1251, 866, 10007, L"Kyrgyz (Kyrgyzstan)", 130,
CyrillicFonts, kyKGLayouts},
#endif
#ifdef LANGUAGE_LV_LV
- {L"00000426", 1257, 775, 10029, L"Latvian", L"140",
LatinFonts, lvLVLayouts},
+ {L"00000426", 1257, 775, 10029, L"Latvian", 140, LatinFonts,
lvLVLayouts},
#endif
#ifdef LANGUAGE_LT_LT
- {L"00000427", 1257, 775, 10029, L"Lithuanian", L"141",
LatinFonts, ltLTLayouts},
+ {L"00000427", 1257, 775, 10029, L"Lithuanian", 141, LatinFonts,
ltLTLayouts},
#endif
#ifdef LANGUAGE_MK_MK
- {L"0000042F", 1251, 866, 10007, L"FYRO Macedonian",
L"19618", CyrillicFonts, mkMKLayouts},
+ {L"0000042F", 1251, 866, 10007, L"FYRO Macedonian", 19618,
CyrillicFonts, mkMKLayouts},
#endif
#ifdef LANGUAGE_MS_BN
- {L"0000083E", 1252, 850, 10000, L"Malay (Brunei Darussalam)",
L"37", LatinFonts, msBNLayouts},
+ {L"0000083E", 1252, 850, 10000, L"Malay (Brunei Darussalam)", 37,
LatinFonts, msBNLayouts},
#endif
#ifdef LANGUAGE_MS_MY
- {L"0000043E", 1252, 850, 10000, L"Malay (Malaysia)",
L"167", LatinFonts, msMYLayouts},
+ {L"0000043E", 1252, 850, 10000, L"Malay (Malaysia)", 167,
LatinFonts, msMYLayouts},
#endif
#ifdef LANGUAGE_MR_IN
- {L"0000044E", 0, 1, 2, L"Marathi", L"113",
UnicodeFonts, mrINLayouts},
+ {L"0000044E", 0, 1, 2, L"Marathi", 113, UnicodeFonts,
mrINLayouts},
#endif
#ifdef LANGUAGE_MN_MN
- {L"00000450", 1251, 866, 10007, L"Mongolian (Mongolia)",
L"154", CyrillicFonts, mnMNLayouts},
+ {L"00000450", 1251, 866, 10007, L"Mongolian (Mongolia)", 154,
CyrillicFonts, mnMNLayouts},
#endif
#ifdef LANGUAGE_NB_NO
- {L"00000414", 1252, 850, 10000, L"Norwegian (Bokmal)",
L"177", LatinFonts, nbNOLayouts},
+ {L"00000414", 1252, 850, 10000, L"Norwegian (Bokmal)", 177,
LatinFonts, nbNOLayouts},
#endif
#ifdef LANGUAGE_NN_NO
- {L"00000814", 1252, 850, 10000, L"Norwegian (Nynorsk)",
L"177", LatinFonts, nnNOLayouts},
+ {L"00000814", 1252, 850, 10000, L"Norwegian (Nynorsk)", 177,
LatinFonts, nnNOLayouts},
#endif
#ifdef LANGUAGE_PL_PL
- {L"00000415", 1250, 852, 10029, L"Polish", L"191",
LatinFonts, plPLLayouts},
+ {L"00000415", 1250, 852, 10029, L"Polish", 191, LatinFonts,
plPLLayouts},
#endif
#ifdef LANGUAGE_PT_PT
- {L"00000816", 1252, 850, 10000, L"Portuguese (Portugal)",
L"193", LatinFonts, ptPTLayouts},
+ {L"00000816", 1252, 850, 10000, L"Portuguese (Portugal)", 193,
LatinFonts, ptPTLayouts},
#endif
#ifdef LANGUAGE_PT_BR
- {L"00000416", 1252, 850, 10000, L"Portuguese (Brazil)",
L"32", LatinFonts, ptBRLayouts},
+ {L"00000416", 1252, 850, 10000, L"Portuguese (Brazil)", 32,
LatinFonts, ptBRLayouts},
#endif
#ifdef LANGUAGE_PA_IN
- {L"00000446", 0, 1, 2, L"Punjabi (India)", L"113",
UnicodeFonts, paINLayouts},
+ {L"00000446", 0, 1, 2, L"Punjabi (India)", 113, UnicodeFonts,
paINLayouts},
#endif
#ifdef LANGUAGE_RO_RO
- {L"00000418", 28606, 28606, 10029, L"Romanian", L"200",
LatinFonts, roROLayouts},
+ {L"00000418", 28606, 28606, 10029, L"Romanian", 200, LatinFonts,
roROLayouts},
#endif
#ifdef LANGUAGE_RM_CH
- {L"00000417", 1252, 850, 10000, L"Romansh", L"223",
LatinFonts, rmCHLayouts},
+ {L"00000417", 1252, 850, 10000, L"Romansh", 223, LatinFonts,
rmCHLayouts},
#endif
#ifdef LANGUAGE_RU_RU
- {L"00000419", 1251, 866, 10007, L"Russian", L"203",
CyrillicFonts, ruRULayouts},
+ {L"00000419", 1251, 866, 10007, L"Russian", 203, CyrillicFonts,
ruRULayouts},
#endif
#ifdef LANGUAGE_SA_IN
- {L"0000044F", 0, 1, 2, L"Sanskrit", L"113",
UnicodeFonts, saINLayouts},
+ {L"0000044F", 0, 1, 2, L"Sanskrit", 113, UnicodeFonts,
saINLayouts},
#endif
#ifdef LANGUAGE_SR_SP
- {L"00000C1A", 1251, 855, 10007, L"Serbian (Cyrillic)",
L"271", CyrillicFonts, srSPLayouts},
+ {L"00000C1A", 1251, 855, 10007, L"Serbian (Cyrillic)", 271,
CyrillicFonts, srSPLayouts},
#endif
#ifdef LANGUAGE_SR_SP
- {L"0000081A", 1250, 852, 10029, L"Serbian (Latin)",
L"271", LatinFonts, srSPLayouts},
+ {L"0000081A", 1250, 852, 10029, L"Serbian (Latin)", 271,
LatinFonts, srSPLayouts},
#endif
#ifdef LANGUAGE_SK_SK
- {L"0000041B", 1250, 852, 10029, L"Slovak", L"143",
LatinFonts, skSKLayouts},
+ {L"0000041B", 1250, 852, 10029, L"Slovak", 143, LatinFonts,
skSKLayouts},
#endif
#ifdef LANGUAGE_SL_SI
- {L"00000424", 1250, 852, 10029, L"Slovenian", L"212",
LatinFonts, slSILayouts},
+ {L"00000424", 1250, 852, 10029, L"Slovenian", 212, LatinFonts,
slSILayouts},
#endif
#ifdef LANGUAGE_ES_ES
- {L"0000040A", 1252, 850, 10000, L"Spanish (Traditional Sort)",
L"217", LatinFonts, esESLayouts},
+ {L"0000040A", 1252, 850, 10000, L"Spanish (Traditional Sort)",
217, LatinFonts, esESLayouts},
#endif
#ifdef LANGUAGE_ES_MX
- {L"0000080A", 1252, 850, 10000, L"Spanish (Mexico)",
L"166", LatinFonts, esMXLayouts},
+ {L"0000080A", 1252, 850, 10000, L"Spanish (Mexico)", 166,
LatinFonts, esMXLayouts},
#endif
#ifdef LANGUAGE_ES_ES
- {L"00000C0A", 1252, 850, 10000, L"Spanish (International Sort)",
L"217", LatinFonts, esESLayouts},
+ {L"00000C0A", 1252, 850, 10000, L"Spanish (International Sort)",
217, LatinFonts, esESLayouts},
#endif
#ifdef LANGUAGE_ES_GT
- {L"0000100A", 1252, 850, 10000, L"Spanish (Guatemala)",
L"99", LatinFonts, esGTLayouts},
+ {L"0000100A", 1252, 850, 10000, L"Spanish (Guatemala)", 99,
LatinFonts, esGTLayouts},
#endif
#ifdef LANGUAGE_ES_CR
- {L"0000140A", 1252, 850, 10000, L"Spanish (Costa Rica)",
L"54", LatinFonts, esCRLayouts},
+ {L"0000140A", 1252, 850, 10000, L"Spanish (Costa Rica)", 54,
LatinFonts, esCRLayouts},
#endif
#ifdef LANGUAGE_ES_PA
- {L"0000180A", 1252, 850, 10000, L"Spanish (Panama)",
L"192", LatinFonts, esPALayouts},
+ {L"0000180A", 1252, 850, 10000, L"Spanish (Panama)", 192,
LatinFonts, esPALayouts},
#endif
#ifdef LANGUAGE_ES_DO
- {L"00001C0A", 1252, 850, 10000, L"Spanish (Dominican Republic)",
L"65", LatinFonts, esDOLayouts},
+ {L"00001C0A", 1252, 850, 10000, L"Spanish (Dominican Republic)",
65, LatinFonts, esDOLayouts},
#endif
#ifdef LANGUAGE_ES_VE
- {L"0000200A", 1252, 850, 10000, L"Spanish (Venezuela)",
L"249", LatinFonts, esVELayouts},
+ {L"0000200A", 1252, 850, 10000, L"Spanish (Venezuela)", 249,
LatinFonts, esVELayouts},
#endif
#ifdef LANGUAGE_ES_CO
- {L"0000240A", 1252, 850, 10000, L"Spanish (Colombia)",
L"51", LatinFonts, esCOLayouts},
+ {L"0000240A", 1252, 850, 10000, L"Spanish (Colombia)", 51,
LatinFonts, esCOLayouts},
#endif
#ifdef LANGUAGE_ES_PE
- {L"0000280A", 1252, 850, 10000, L"Spanish (Peru)",
L"187", LatinFonts, esPELayouts},
+ {L"0000280A", 1252, 850, 10000, L"Spanish (Peru)", 187,
LatinFonts, esPELayouts},
#endif
#ifdef LANGUAGE_ES_AR
- {L"00002C0A", 1252, 850, 10000, L"Spanish (Argentina)",
L"11", LatinFonts, esARLayouts},
+ {L"00002C0A", 1252, 850, 10000, L"Spanish (Argentina)", 11,
LatinFonts, esARLayouts},
#endif
#ifdef LANGUAGE_ES_EC
- {L"0000300A", 1252, 850, 10000, L"Spanish (Ecuador)",
L"66", LatinFonts, esECLayouts},
+ {L"0000300A", 1252, 850, 10000, L"Spanish (Ecuador)", 66,
LatinFonts, esECLayouts},
#endif
#ifdef LANGUAGE_ES_CL
- {L"0000340A", 1252, 850, 10000, L"Spanish (Chile)",
L"46", LatinFonts, esCLLayouts},
+ {L"0000340A", 1252, 850, 10000, L"Spanish (Chile)", 46,
LatinFonts, esCLLayouts},
#endif
#ifdef LANGUAGE_ES_UY
- {L"0000380A", 1252, 850, 10000, L"Spanish (Uruguay)",
L"246", LatinFonts, esUYLayouts},
+ {L"0000380A", 1252, 850, 10000, L"Spanish (Uruguay)", 246,
LatinFonts, esUYLayouts},
#endif
#ifdef LANGUAGE_ES_PY
- {L"00003C0A", 1252, 850, 10000, L"Spanish (Paraguay)",
L"185", LatinFonts, esPYLayouts},
+ {L"00003C0A", 1252, 850, 10000, L"Spanish (Paraguay)", 185,
LatinFonts, esPYLayouts},
#endif
#ifdef LANGUAGE_ES_BO
- {L"0000400A", 1252, 850, 10000, L"Spanish (Bolivia)",
L"26", LatinFonts, esBOLayouts},
+ {L"0000400A", 1252, 850, 10000, L"Spanish (Bolivia)", 26,
LatinFonts, esBOLayouts},
#endif
#ifdef LANGUAGE_ES_SV
- {L"0000440A", 1252, 850, 10000, L"Spanish (El Salvador)",
L"72", LatinFonts, esSVLayouts},
+ {L"0000440A", 1252, 850, 10000, L"Spanish (El Salvador)", 72,
LatinFonts, esSVLayouts},
#endif
#ifdef LANGUAGE_ES_HN
- {L"0000480A", 1252, 850, 10000, L"Spanish (Honduras)",
L"106", LatinFonts, esHNLayouts},
+ {L"0000480A", 1252, 850, 10000, L"Spanish (Honduras)", 106,
LatinFonts, esHNLayouts},
#endif
#ifdef LANGUAGE_ES_NI
- {L"00004C0A", 1252, 850, 10000, L"Spanish (Nicaragua)",
L"182", LatinFonts, esNILayouts},
+ {L"00004C0A", 1252, 850, 10000, L"Spanish (Nicaragua)", 182,
LatinFonts, esNILayouts},
#endif
#ifdef LANGUAGE_ES_PR
- {L"0000500A", 1252, 850, 10000, L"Spanish (Puerto Rico)",
L"202", LatinFonts, esPRLayouts},
+ {L"0000500A", 1252, 850, 10000, L"Spanish (Puerto Rico)", 202,
LatinFonts, esPRLayouts},
#endif
#ifdef LANGUAGE_SW_KE
- {L"00000441", 1252, 437, 10000, L"Swahili", L"129",
LatinFonts, swKELayouts},
+ {L"00000441", 1252, 437, 10000, L"Swahili", 129, LatinFonts,
swKELayouts},
#endif
#ifdef LANGUAGE_SV_SE
- {L"0000041D", 1252, 850, 10000, L"Swedish", L"221",
LatinFonts, svSELayouts},
+ {L"0000041D", 1252, 850, 10000, L"Swedish", 221, LatinFonts,
svSELayouts},
#endif
#ifdef LANGUAGE_SV_FI
- {L"0000081D", 1252, 850, 10000, L"Swedish (Finland)",
L"77", LatinFonts, svFILayouts},
+ {L"0000081D", 1252, 850, 10000, L"Swedish (Finland)", 77,
LatinFonts, svFILayouts},
#endif
#ifdef LANGUAGE_SYR_SY
- {L"0000045A", 0, 1, 2, L"Syriac (Syria)", L"222",
UnicodeFonts, syrSYLayouts},
+ {L"0000045A", 0, 1, 2, L"Syriac (Syria)", 222, UnicodeFonts,
syrSYLayouts},
#endif
#ifdef LANGUAGE_TA_IN
- {L"00000449", 0, 1, 2, L"Tamil", L"113", UnicodeFonts,
taINLayouts},
+ {L"00000449", 0, 1, 2, L"Tamil", 113, UnicodeFonts,
taINLayouts},
#endif
#ifdef LANGUAGE_TT_TA
- {L"00000444", 1251, 866, 10007, L"Tatar", L"1",
CyrillicFonts, ttTALayouts},
+ {L"00000444", 1251, 866, 10007, L"Tatar", 1, CyrillicFonts,
ttTALayouts},
#endif
#ifdef LANGUAGE_TE_IN
- {L"0000044A", 0, 1, 2, L"Telugu (India)", L"113",
UnicodeFonts, teINLayouts},
+ {L"0000044A", 0, 1, 2, L"Telugu (India)", 113, UnicodeFonts,
teINLayouts},
#endif
#ifdef LANGUAGE_TH_TH
- {L"0000041E", 874, 874, 10021, L"Thai", L"227",
UnicodeFonts, thTHLayouts},
+ {L"0000041E", 874, 874, 10021, L"Thai", 227, UnicodeFonts,
thTHLayouts},
#endif
#ifdef LANGUAGE_TR_TR
- {L"0000041F", 1254, 857, 10081, L"Turkish", L"235",
LatinFonts, trTRLayouts},
+ {L"0000041F", 1254, 857, 10081, L"Turkish", 235, LatinFonts,
trTRLayouts},
#endif
#ifdef LANGUAGE_UK_UA
- {L"00000422", 1251, 866, 10017, L"Ukrainian", L"241",
CyrillicFonts, ukUALayouts},
+ {L"00000422", 1251, 866, 10017, L"Ukrainian", 241, CyrillicFonts,
ukUALayouts},
#endif
#ifdef LANGUAGE_UR_PK
- {L"00000420", 1256, 720, 10004, L"Urdu", L"190",
UnicodeFonts, urPKLayouts},
+ {L"00000420", 1256, 720, 10004, L"Urdu", 190, UnicodeFonts,
urPKLayouts},
#endif
#ifdef LANGUAGE_UZ_UZ
- {L"00000443", 1254, 857, 10029, L"Uzbek (Latin)",
L"247", LatinFonts, uzUZLayouts},
+ {L"00000443", 1254, 857, 10029, L"Uzbek (Latin)", 247,
LatinFonts, uzUZLayouts},
#endif
#ifdef LANGUAGE_UZ_UZ
- {L"00000843", 1251, 866, 10007, L"Uzbek (Cyrillic)",
L"247", CyrillicFonts, uzUZLayouts},
+ {L"00000843", 1251, 866, 10007, L"Uzbek (Cyrillic)", 247,
CyrillicFonts, uzUZLayouts},
#endif
#ifdef LANGUAGE_VI_VN
- {L"0000042A", 1258, 1258, 10000, L"Vietnamese", L"251",
UnicodeFonts, viVNLayouts},
+ {L"0000042A", 1258, 1258, 10000, L"Vietnamese", 251,
UnicodeFonts, viVNLayouts},
#endif
#ifdef LANGUAGE_WA_BE
- {L"00000490", 1252, 850, 10000, L"Walon", L"21",
LatinFonts, waBELayouts},
+ {L"00000490", 1252, 850, 10000, L"Walon", 21, LatinFonts,
waBELayouts},
#endif
#ifdef LANGUAGE_ZU_ZU
- {L"00000435", 1252, 850, 10000, L"Zulu", L"1",
LatinFonts, zuZULayouts},
+ {L"00000435", 1252, 850, 10000, L"Zulu", 1, LatinFonts,
zuZULayouts},
#endif
- {NULL, 0, 0, 0, NULL, NULL, NULL, NULL}
+ {NULL, 0, 0, 0, NULL, 0, NULL, NULL}
};
diff --git a/base/setup/lib/settings.c b/base/setup/lib/settings.c
index 92670a12e7e..09d3c240fb4 100644
--- a/base/setup/lib/settings.c
+++ b/base/setup/lib/settings.c
@@ -1346,12 +1346,20 @@ ProcessKeyboardLayoutFiles(
BOOLEAN
SetGeoID(
- IN PCWSTR Id)
+ _In_ GEOID GeoId)
{
NTSTATUS Status;
OBJECT_ATTRIBUTES ObjectAttributes;
UNICODE_STRING Name;
HANDLE KeyHandle;
+ /*
+ * Buffer big enough to hold the NULL-terminated string L"4294967295",
+ * corresponding to the literal 0xFFFFFFFF (MAXULONG) in decimal.
+ */
+ WCHAR Value[sizeof("4294967295")];
+
+ Status = RtlStringCchPrintfW(Value, _countof(Value), L"%lu", GeoId);
+ ASSERT(NT_SUCCESS(Status));
RtlInitUnicodeString(&Name,
L".DEFAULT\\Control Panel\\International\\Geo");
@@ -1360,9 +1368,9 @@ SetGeoID(
OBJ_CASE_INSENSITIVE,
GetRootKeyByPredefKey(HKEY_USERS, NULL),
NULL);
- Status = NtOpenKey(&KeyHandle,
- KEY_SET_VALUE,
- &ObjectAttributes);
+ Status = NtOpenKey(&KeyHandle,
+ KEY_SET_VALUE,
+ &ObjectAttributes);
if (!NT_SUCCESS(Status))
{
DPRINT1("NtOpenKey() failed (Status %lx)\n", Status);
@@ -1374,12 +1382,12 @@ SetGeoID(
&Name,
0,
REG_SZ,
- (PVOID)Id,
- (wcslen(Id) + 1) * sizeof(WCHAR));
+ (PVOID)Value,
+ (wcslen(Value) + 1) * sizeof(WCHAR));
NtClose(KeyHandle);
if (!NT_SUCCESS(Status))
{
- DPRINT1("NtSetValueKey() failed (Status = %lx)\n", Status);
+ DPRINT1("NtSetValueKey() failed (Status %lx)\n", Status);
return FALSE;
}
diff --git a/base/setup/lib/settings.h b/base/setup/lib/settings.h
index 9c46123e434..e77f15684c0 100644
--- a/base/setup/lib/settings.h
+++ b/base/setup/lib/settings.h
@@ -85,7 +85,7 @@ ProcessLocaleRegistry(
BOOLEAN
SetGeoID(
- IN PCWSTR Id);
+ _In_ GEOID GeoId);
BOOLEAN
SetDefaultPagefile(