[USETUP] Use correct flags for the NtCreateFile call that creates new file directories.
[reactos.git] / base / setup / usetup / mui.h
1 #pragma once
2
3 typedef struct
4 {
5 BYTE X;
6 BYTE Y;
7 LPCSTR Buffer;
8 DWORD Flags;
9 }MUI_ENTRY, *PMUI_ENTRY;
10
11 typedef struct
12 {
13 LPCSTR ErrorText;
14 LPCSTR ErrorStatus;
15 }MUI_ERROR;
16
17 typedef struct
18 {
19 LONG Number;
20 MUI_ENTRY * MuiEntry;
21 } MUI_PAGE;
22
23 typedef struct
24 {
25 LONG Number;
26 LPSTR String;
27 } MUI_STRING;
28
29 typedef struct
30 {
31 PWCHAR FontName;
32 PWCHAR SubFontName;
33 } MUI_SUBFONT;
34
35 typedef struct
36 {
37 PWCHAR LangID; // Language ID (like "0409")
38 PWCHAR LayoutID; // Layout ID (like "00000409")
39 } MUI_LAYOUTS;
40
41 typedef struct
42 {
43 PWCHAR LanguageID;
44 PWCHAR ACPage;
45 PWCHAR OEMCPage;
46 PWCHAR MACCPage;
47 PWCHAR LanguageDescriptor;
48 PWCHAR GeoID;
49 const MUI_PAGE * MuiPages;
50 const MUI_ERROR * MuiErrors;
51 const MUI_STRING * MuiStrings;
52 const MUI_SUBFONT * MuiSubFonts;
53 const MUI_LAYOUTS * MuiLayouts;
54 } MUI_LANGUAGE;
55
56 BOOLEAN
57 IsLanguageAvailable(
58 PWCHAR LanguageId);
59
60 VOID
61 MUIDisplayPage(
62 ULONG PageNumber);
63
64 VOID
65 MUIClearPage(
66 ULONG PageNumber);
67
68 VOID
69 MUIDisplayError(
70 ULONG ErrorNum,
71 PINPUT_RECORD Ir,
72 ULONG WaitEvent,
73 ...);
74
75 LPCWSTR
76 MUIDefaultKeyboardLayout(VOID);
77
78 PWCHAR
79 MUIGetGeoID(VOID);
80
81 const MUI_LAYOUTS *
82 MUIGetLayoutsList(VOID);
83
84 BOOLEAN
85 AddKbLayoutsToRegistry(
86 IN const MUI_LAYOUTS *MuiLayouts);
87
88 BOOLEAN
89 AddCodePage(VOID);
90
91 BOOLEAN
92 AddKeyboardLayouts(VOID);
93
94 VOID
95 SetConsoleCodePage(VOID);
96
97 LPSTR
98 MUIGetString(
99 ULONG Number);
100
101 #define STRING_PLEASEWAIT 1
102 #define STRING_INSTALLCREATEPARTITION 2
103 #define STRING_INSTALLCREATELOGICAL 60
104 #define STRING_INSTALLDELETEPARTITION 3
105 #define STRING_DELETEPARTITION 59
106 #define STRING_PARTITIONSIZE 4
107 #define STRING_CHOOSENEWPARTITION 5
108 #define STRING_CHOOSE_NEW_EXTENDED_PARTITION 57
109 #define STRING_CHOOSE_NEW_LOGICAL_PARTITION 61
110 #define STRING_HDDSIZE 6
111 #define STRING_CREATEPARTITION 7
112 #define STRING_PARTFORMAT 8
113 #define STRING_NONFORMATTEDPART 9
114 #define STRING_NONFORMATTEDSYSTEMPART 62
115 #define STRING_NONFORMATTEDOTHERPART 63
116 #define STRING_INSTALLONPART 10
117 #define STRING_CHECKINGPART 11
118 #define STRING_CONTINUE 12
119 #define STRING_QUITCONTINUE 13
120 #define STRING_REBOOTCOMPUTER 14
121 #define STRING_TXTSETUPFAILED 15
122 #define STRING_COPYING 16
123 #define STRING_SETUPCOPYINGFILES 17
124 #define STRING_REGHIVEUPDATE 20
125 #define STRING_IMPORTFILE 21
126 #define STRING_DISPLAYETTINGSUPDATE 22
127 #define STRING_LOCALESETTINGSUPDATE 23
128 #define STRING_KEYBOARDSETTINGSUPDATE 24
129 #define STRING_CODEPAGEINFOUPDATE 25
130 #define STRING_DONE 26
131 #define STRING_REBOOTCOMPUTER2 27
132 #define STRING_CONSOLEFAIL1 28
133 #define STRING_CONSOLEFAIL2 29
134 #define STRING_CONSOLEFAIL3 30
135 #define STRING_FORMATTINGDISK 31
136 #define STRING_CHECKINGDISK 32
137 #define STRING_FORMATDISK1 33
138 #define STRING_FORMATDISK2 34
139 #define STRING_KEEPFORMAT 35
140 #define STRING_HDINFOPARTCREATE 36
141 #define STRING_HDDINFOUNK1 37
142 #define STRING_HDDINFOUNK2 38
143 #define STRING_HDINFOPARTDELETE 39
144 #define STRING_HDDINFOUNK3 40
145 #define STRING_HDINFOPARTZEROED 41
146 #define STRING_HDDINFOUNK4 42
147 #define STRING_HDINFOPARTEXISTS 43
148 #define STRING_HDDINFOUNK5 44
149 #define STRING_HDINFOPARTSELECT 45
150 #define STRING_HDDINFOUNK6 46
151 #define STRING_NEWPARTITION 47
152 #define STRING_UNPSPACE 48
153 #define STRING_MAXSIZE 49
154 #define STRING_UNFORMATTED 50
155 #define STRING_EXTENDED_PARTITION 58
156 #define STRING_FORMATUNUSED 51
157 #define STRING_FORMATUNKNOWN 52
158 #define STRING_KB 53
159 #define STRING_MB 54
160 #define STRING_GB 55
161 #define STRING_ADDKBLAYOUTS 56