]> git.sur5r.net Git - bacula/bacula/blob - bacula/src/win32/full_win32_installer/ConfigPage2.nsh
Restore win32 dir from Branch-5.2 and update it
[bacula/bacula] / bacula / src / win32 / full_win32_installer / ConfigPage2.nsh
1 Function EnterConfigPage2\r
2   IntOp $R0 $NewComponents & ${ComponentsRequiringUserConfig}\r
3 \r
4   ${If} $R0 = 0\r
5     Abort\r
6   ${EndIf}\r
7 \r
8   FileOpen $R5 "$PLUGINSDIR\ConfigPage2.ini" w\r
9 \r
10   StrCpy $R6 1  ; Field Number\r
11   StrCpy $R7 0  ; Top\r
12 \r
13   IntOp $R0 $NewComponents & ${ComponentDirector}\r
14   ${If} $R0 <> 0\r
15     ${If} $AutomaticInstall = 1\r
16       IntOp $R8 $R7 + 54\r
17     ${Else}\r
18       IntOp $R8 $R7 + 92\r
19     ${EndIf}\r
20     FileWrite $R5 '[Field $R6]$\r$\nType="GroupBox"$\r$\nText="Director"$\r$\nLeft=0$\r$\nTop=$R7$\r$\nRight=300$\r$\nBottom=$R8$\r$\n$\r$\n'\r
21   ${Else}\r
22     IntOp $R0 $NewComponents & ${ComponentsTextAndGuiConsoles}\r
23     ${If} $R0 <> 0\r
24       IntOp $R8 $R7 + 54\r
25     ${Else}\r
26       IntOp $R8 $R7 + 26\r
27     ${EndIf}\r
28     FileWrite $R5 '[Field $R6]$\r$\nType="GroupBox"$\r$\nText="Enter data for Director allowed to access this Client"$\r$\nLeft=0$\r$\nTop=$R7$\r$\nRight=300$\r$\nBottom=$R8$\r$\n$\r$\n'\r
29   ${EndIf}\r
30 \r
31   IntOp $R6 $R6 + 1\r
32   IntOp $R7 $R7 + 12\r
33 \r
34   IntOp $R0 $NewComponents & ${ComponentDirector}\r
35   ${If} $R0 <> 0\r
36     ${If} "$ConfigDirectorName" == ""\r
37       StrCpy $ConfigDirectorName "$HostName-dir"\r
38     ${EndIf}\r
39     ${If} "$ConfigDirectorPassword" == ""\r
40       StrCpy $ConfigDirectorPassword "$LocalDirectorPassword"\r
41     ${EndIf}\r
42   ${Else}\r
43     ${If} "$ConfigDirectorName" == "$HostName-dir"\r
44       StrCpy $ConfigDirectorName ""\r
45     ${EndIf}\r
46     ${If} "$ConfigDirectorPassword" == "$LocalDirectorPassword"\r
47       StrCpy $ConfigDirectorPassword ""\r
48     ${EndIf}\r
49   ${EndIf}\r
50 \r
51   IntOp $R0 $NewComponents & ${ComponentDirector}\r
52   ${If} $R0 = 0\r
53   ${OrIf} $AutomaticInstall = 0\r
54     IntOp $R8 $R7 + 8\r
55     FileWrite $R5 '[Field $R6]$\r$\nType="Label"$\r$\nText="Name"$\r$\nLeft=6$\r$\nTop=$R7$\r$\nRight=26$\r$\nBottom=$R8$\r$\n$\r$\n'\r
56     IntOp $R6 $R6 + 1\r
57     IntOp $R7 $R7 - 2\r
58 \r
59     IntOp $R8 $R8 + 2\r
60     FileWrite $R5 '[Field $R6]$\r$\nType="Text"$\r$\nState=$ConfigDirectorName$\r$\nLeft=50$\r$\nTop=$R7$\r$\nRight=158$\r$\nBottom=$R8$\r$\n$\r$\n'\r
61     IntOp $R6 $R6 + 1\r
62 \r
63     ${If} $AutomaticInstall = 0\r
64       IntOp $R0 $NewComponents & ${ComponentsDirectorAndTextGuiConsoles}\r
65       ${If} $R0 <> 0\r
66         IntOp $R7 $R7 + 2\r
67         IntOp $R8 $R8 - 2\r
68         FileWrite $R5 '[Field $R6]$\r$\nType="Label"$\r$\nText="Port"$\r$\nLeft=172$\r$\nTop=$R7$\r$\nRight=188$\r$\nBottom=$R8$\r$\n$\r$\n'\r
69         IntOp $R6 $R6 + 1\r
70         IntOp $R7 $R7 - 2\r
71 \r
72         IntOp $R8 $R8 + 2\r
73         FileWrite $R5 '[Field $R6]$\r$\nType="Text"$\r$\nFlags="ONLY_NUMBERS"$\r$\nState=$ConfigDirectorPort$\r$\nLeft=190$\r$\nTop=$R7$\r$\nRight=218$\r$\nBottom=$R8$\r$\n$\r$\n'\r
74         IntOp $R6 $R6 + 1\r
75       ${EndIf}\r
76 \r
77       IntOp $R0 $NewComponents & ${ComponentDirector}\r
78       ${If} $R0 <> 0\r
79         IntOp $R7 $R7 + 2\r
80         IntOp $R8 $R8 - 2\r
81         FileWrite $R5 '[Field $R6]$\r$\nType="Label"$\r$\nText="Max Jobs"$\r$\nLeft=238$\r$\nTop=$R7$\r$\nRight=270$\r$\nBottom=$R8$\r$\n$\r$\n'\r
82         IntOp $R6 $R6 + 1\r
83         IntOp $R7 $R7 - 2\r
84 \r
85         IntOp $R8 $R8 + 2\r
86         FileWrite $R5 '[Field $R6]$\r$\nType="Text"$\r$\nFlags="ONLY_NUMBERS"$\r$\nState=$ConfigDirectorMaxJobs$\r$\nLeft=274$\r$\nTop=$R7$\r$\nRight=294$\r$\nBottom=$R8$\r$\n$\r$\n'\r
87         IntOp $R6 $R6 + 1\r
88       ${EndIf}\r
89     ${EndIf}\r
90 \r
91     IntOp $R7 $R7 + 14\r
92   ${EndIf}\r
93 \r
94   IntOp $R0 $NewComponents & ${ComponentsTextAndGuiConsoles}\r
95   ${If} $R0 <> 0\r
96   ${OrIf} $AutomaticInstall = 0\r
97     IntOp $R0 $NewComponents & ${ComponentsDirectorAndTextGuiConsoles}\r
98     ${If} $R0 <> 0\r
99       IntOp $R7 $R7 + 2\r
100       IntOp $R8 $R7 + 8\r
101 \r
102       FileWrite $R5 '[Field $R6]$\r$\nType="Label"$\r$\nText="Password"$\r$\nLeft=6$\r$\nTop=$R7$\r$\nRight=38$\r$\nBottom=$R8$\r$\n$\r$\n'\r
103 \r
104       IntOp $R6 $R6 + 1\r
105       IntOp $R7 $R7 - 2\r
106       IntOp $R8 $R8 + 2\r
107 \r
108       FileWrite $R5 '[Field $R6]$\r$\nType="Text"$\r$\nState=$ConfigDirectorPassword$\r$\nLeft=50$\r$\nTop=$R7$\r$\nRight=294$\r$\nBottom=$R8$\r$\n$\r$\n'\r
109 \r
110       IntOp $R6 $R6 + 1\r
111       IntOp $R7 $R7 + 14\r
112     ${EndIf}\r
113   ${EndIf}\r
114 \r
115   IntOp $R0 $NewComponents & ${ComponentDirector}\r
116   ${If} $R0 <> 0\r
117     IntOp $R7 $R7 + 2\r
118     IntOp $R8 $R7 + 8\r
119 \r
120     FileWrite $R5 '[Field $R6]$\r$\nType="Label"$\r$\nText="Mail Server"$\r$\nLeft=6$\r$\nTop=$R7$\r$\nRight=48$\r$\nBottom=$R8$\r$\n$\r$\n'\r
121 \r
122     IntOp $R6 $R6 + 1\r
123     IntOp $R7 $R7 - 2\r
124     IntOp $R8 $R8 + 2\r
125 \r
126     FileWrite $R5 '[Field $R6]$\r$\nType="Text"$\r$\nState=$ConfigDirectorMailServer$\r$\nLeft=50$\r$\nTop=$R7$\r$\nRight=294$\r$\nBottom=$R8$\r$\n$\r$\n'\r
127     IntOp $R6 $R6 + 1\r
128     IntOp $R7 $R7 + 16\r
129     IntOp $R8 $R7 + 8\r
130 \r
131     FileWrite $R5 '[Field $R6]$\r$\nType="Label"$\r$\nText="Mail Address"$\r$\nLeft=6$\r$\nTop=$R7$\r$\nRight=48$\r$\nBottom=$R8$\r$\n$\r$\n'\r
132 \r
133     IntOp $R6 $R6 + 1\r
134     IntOp $R7 $R7 - 2\r
135     IntOp $R8 $R8 + 2\r
136 \r
137     FileWrite $R5 '[Field $R6]$\r$\nType="Text"$\r$\nState=$ConfigDirectorMailAddress$\r$\nLeft=50$\r$\nTop=$R7$\r$\nRight=294$\r$\nBottom=$R8$\r$\n$\r$\n'\r
138     IntOp $R6 $R6 + 1\r
139     IntOp $R7 $R7 + 16\r
140     IntOp $R8 $R7 + 8\r
141 \r
142     FileWrite $R5 '[Field $R6]$\r$\nType="Label"$\r$\nText="Database"$\r$\nLeft=6$\r$\nTop=$R7$\r$\nRight=38$\r$\nBottom=$R8$\r$\n$\r$\n'\r
143 \r
144     IntOp $R6 $R6 + 1\r
145     IntOp $R7 $R7 - 2\r
146     IntOp $R8 $R8 + 2\r
147 \r
148     ${If} $ConfigDirectorDB = 0\r
149       ${If} $MySQLPath != ""\r
150         StrCpy $ConfigDirectorDB 1\r
151       ${ElseIf} $PostgreSQLPath != ""\r
152         StrCpy $ConfigDirectorDB 2\r
153       ${Else}\r
154         StrCpy $ConfigDirectorDB 3\r
155       ${EndIf}\r
156     ${EndIf}\r
157 \r
158     ${If} $ConfigDirectorDB = 1\r
159       StrCpy $R9 1\r
160     ${Else}\r
161       StrCpy $R9 0\r
162     ${EndIf}\r
163 \r
164     FileWrite $R5 '[Field $R6]$\r$\nType="RadioButton"$\r$\nState=$R9$\r$\nText="MySQL"$\r$\nFlags="GROUP"$\r$\nLeft=50$\r$\nTop=$R7$\r$\nRight=90$\r$\nBottom=$R8$\r$\n$\r$\n'\r
165 \r
166     IntOp $R6 $R6 + 1\r
167 \r
168     ${If} $ConfigDirectorDB = 2\r
169       StrCpy $R9 1\r
170     ${Else}\r
171       StrCpy $R9 0\r
172     ${EndIf}\r
173 \r
174     FileWrite $R5 '[Field $R6]$\r$\nType="RadioButton"$\r$\nState=$R9$\r$\nText="PostgreSQL"$\r$\nFlags="NOTABSTOP"$\r$\nLeft=94$\r$\nTop=$R7$\r$\nRight=146$\r$\nBottom=$R8$\r$\n$\r$\n'\r
175 \r
176     IntOp $R6 $R6 + 1\r
177 \r
178     ${If} $ConfigDirectorDB = 3\r
179       StrCpy $R9 1\r
180     ${Else}\r
181       StrCpy $R9 0\r
182     ${EndIf}\r
183 \r
184     FileWrite $R5 '[Field $R6]$\r$\nType="RadioButton"$\r$\nState=$R9$\r$\nText="Sqlite"$\r$\nFlags="NOTABSTOP"$\r$\nLeft=150$\r$\nTop=$R7$\r$\nRight=182$\r$\nBottom=$R8$\r$\n$\r$\n'\r
185 \r
186     IntOp $R6 $R6 + 1\r
187     IntOp $R7 $R7 + 12\r
188 \r
189     ${If} $AutomaticInstall = 0\r
190       IntOp $R8 $R7 + 10\r
191       FileWrite $R5 '[Field $R6]$\r$\nType="Checkbox"$\r$\nState=$ConfigDirectorInstallService$\r$\nText="Install as service"$\r$\nLeft=50$\r$\nTop=$R7$\r$\nRight=118$\r$\nBottom=$R8$\r$\n$\r$\n'\r
192       IntOp $R6 $R6 + 1\r
193 \r
194       FileWrite $R5 '[Field $R6]$\r$\nType="Checkbox"$\r$\nState=$ConfigDirectorStartService$\r$\nText="Start after install"$\r$\nLeft=190$\r$\nTop=$R7$\r$\nRight=260$\r$\nBottom=$R8$\r$\n$\r$\n'\r
195 \r
196       IntOp $R6 $R6 + 1\r
197       IntOp $R7 $R7 + 12\r
198     ${EndIf}\r
199   ${Else}\r
200     IntOp $R0 $NewComponents & ${ComponentsTextAndGuiConsoles}\r
201     ${If} $R0 <> 0\r
202       IntOp $R7 $R7 + 2\r
203       IntOp $R8 $R7 + 8\r
204 \r
205       FileWrite $R5 '[Field $R6]$\r$\nType="Label"$\r$\nText="Address"$\r$\nLeft=6$\r$\nTop=$R7$\r$\nRight=48$\r$\nBottom=$R8$\r$\n$\r$\n'\r
206 \r
207       IntOp $R6 $R6 + 1\r
208       IntOp $R7 $R7 - 2\r
209       IntOp $R8 $R8 + 2\r
210 \r
211       FileWrite $R5 '[Field $R6]$\r$\nType="Text"$\r$\nState=$ConfigDirectorAddress$\r$\nLeft=50$\r$\nTop=$R7$\r$\nRight=294$\r$\nBottom=$R8$\r$\n$\r$\n'\r
212       IntOp $R6 $R6 + 1\r
213       IntOp $R7 $R7 + 14\r
214       IntOp $R8 $R7 + 8\r
215     ${EndIf}\r
216   ${EndIf}\r
217 \r
218   IntOp $R7 $R7 + 4\r
219 \r
220   ${If} $AutomaticInstall = 0\r
221     IntOp $R0 $NewComponents & ${ComponentsFileAndStorageAndDirector}\r
222     ${If} $R0 <> 0\r
223       IntOp $R8 $R7 + 42\r
224 \r
225       FileWrite $R5 '[Field $R6]$\r$\nType="GroupBox"$\r$\nText="Monitor"$\r$\nLeft=0$\r$\nTop=$R7$\r$\nRight=300$\r$\nBottom=$R8$\r$\n$\r$\n'\r
226       IntOp $R6 $R6 + 1\r
227       IntOp $R7 $R7 + 12\r
228 \r
229       IntOp $R8 $R7 + 8\r
230       FileWrite $R5 '[Field $R6]$\r$\nType="Label"$\r$\nText="Name"$\r$\nLeft=6$\r$\nTop=$R7$\r$\nRight=26$\r$\nBottom=$R8$\r$\n$\r$\n'\r
231       IntOp $R6 $R6 + 1\r
232       IntOp $R7 $R7 - 2\r
233 \r
234       IntOp $R8 $R8 + 2\r
235       FileWrite $R5 '[Field $R6]$\r$\nType="Text"$\r$\nState=$ConfigMonitorName$\r$\nLeft=50$\r$\nTop=$R7$\r$\nRight=150$\r$\nBottom=$R8$\r$\n$\r$\n'\r
236       IntOp $R6 $R6 + 1\r
237       IntOp $R7 $R7 + 16\r
238       IntOp $R8 $R7 + 8\r
239 \r
240       FileWrite $R5 '[Field $R6]$\r$\nType="Label"$\r$\nText="Password"$\r$\nLeft=6$\r$\nTop=$R7$\r$\nRight=38$\r$\nBottom=$R8$\r$\n$\r$\n'\r
241 \r
242       IntOp $R6 $R6 + 1\r
243       IntOp $R7 $R7 - 2\r
244       IntOp $R8 $R8 + 2\r
245 \r
246       FileWrite $R5 '[Field $R6]$\r$\nType="Text"$\r$\nState=$ConfigMonitorPassword$\r$\nLeft=50$\r$\nTop=$R7$\r$\nRight=294$\r$\nBottom=$R8$\r$\n$\r$\n'\r
247 \r
248       IntOp $R6 $R6 + 1\r
249       IntOp $R7 $R7 + 20\r
250     ${EndIf}\r
251   ${EndIf}\r
252 \r
253   IntOp $R6 $R6 - 1\r
254   FileWrite $R5 "[Settings]$\r$\nNumFields=$R6$\r$\n"\r
255 \r
256   FileClose $R5\r
257 \r
258   IntOp $R0 $NewComponents & ${ComponentsFileAndStorage}\r
259   ${If} $R0 = 0\r
260   ${OrIf} $AutomaticInstall = 1\r
261     !insertmacro MUI_HEADER_TEXT "$(TITLE_ConfigPage1)" "$(SUBTITLE_ConfigPage1)"\r
262   ${Else}\r
263     !insertmacro MUI_HEADER_TEXT "$(TITLE_ConfigPage2)" "$(SUBTITLE_ConfigPage2)"\r
264   ${EndIf}\r
265 \r
266   !insertmacro MUI_INSTALLOPTIONS_INITDIALOG "ConfigPage2.ini"\r
267   Pop $HDLG ;HWND of dialog\r
268 \r
269   ; Initialize Controls\r
270   StrCpy $R6 2  ; Field Number\r
271 \r
272   IntOp $R0 $NewComponents & ${ComponentDirector}\r
273   ${If} $R0 = 0\r
274   ${OrIf} $AutomaticInstall = 0\r
275     ; Name\r
276     IntOp $R6 $R6 + 1\r
277     !insertmacro MUI_INSTALLOPTIONS_READ $HCTL "ConfigPage2.ini" "Field $R6" "HWND"\r
278     SendMessage $HCTL ${EM_LIMITTEXT} 30 0\r
279     IntOp $R6 $R6 + 1\r
280 \r
281     ${If} $AutomaticInstall = 0\r
282       IntOp $R0 $NewComponents & ${ComponentsDirectorAndTextGuiConsoles}\r
283       ${If} $R0 <> 0\r
284         IntOp $R6 $R6 + 1\r
285         ; Port Number\r
286         !insertmacro MUI_INSTALLOPTIONS_READ $HCTL "ConfigPage2.ini" "Field $R6" "HWND"\r
287         SendMessage $HCTL ${EM_LIMITTEXT} 5 0\r
288         IntOp $R6 $R6 + 1\r
289       ${EndIf}\r
290 \r
291       IntOp $R0 $NewComponents & ${ComponentDirector}\r
292       ${If} $R0 <> 0\r
293         IntOp $R6 $R6 + 1\r
294         ; Max Jobs\r
295         !insertmacro MUI_INSTALLOPTIONS_READ $HCTL "ConfigPage2.ini" "Field $R6" "HWND"\r
296         SendMessage $HCTL ${EM_LIMITTEXT} 3 0\r
297 \r
298         IntOp $R6 $R6 + 1\r
299       ${EndIf}\r
300     ${EndIf}\r
301   ${EndIf}\r
302 \r
303   IntOp $R0 $NewComponents & ${ComponentsTextAndGuiConsoles}\r
304   ${If} $R0 <> 0\r
305   ${OrIf} $AutomaticInstall = 0\r
306     IntOp $R0 $NewComponents & ${ComponentsDirectorAndTextGuiConsoles}\r
307     ${If} $R0 <> 0\r
308       IntOp $R6 $R6 + 2\r
309     ${EndIf}\r
310   ${EndIf}\r
311 \r
312   IntOp $R0 $NewComponents & ${ComponentDirector}\r
313   ${If} $R0 <> 0\r
314     IntOp $R6 $R6 + 9\r
315 \r
316     ${If} $AutomaticInstall = 0\r
317       IntOp $R6 $R6 + 2\r
318     ${EndIf}\r
319   ${Else}\r
320     IntOp $R0 $NewComponents & ${ComponentsTextAndGuiConsoles}\r
321     ${If} $R0 <> 0\r
322       IntOp $R6 $R6 + 2\r
323     ${EndIf}\r
324   ${EndIf}\r
325 \r
326   ${If} $AutomaticInstall = 0\r
327     IntOp $R0 $NewComponents & ${ComponentsFileAndStorageAndDirector}\r
328     ${If} $R0 <> 0\r
329       IntOp $R6 $R6 + 2\r
330       !insertmacro MUI_INSTALLOPTIONS_READ $HCTL "ConfigPage2.ini" "Field $R6" "HWND"\r
331       SendMessage $HCTL ${EM_LIMITTEXT} 30 0\r
332       IntOp $R6 $R6 + 2\r
333     ${EndIf}\r
334   ${EndIf}\r
335 \r
336   !insertmacro MUI_INSTALLOPTIONS_SHOW\r
337 \r
338   ; Process results\r
339 \r
340   StrCpy $R6 2\r
341 \r
342   IntOp $R0 $NewComponents & ${ComponentDirector}\r
343   ${If} $R0 = 0\r
344   ${OrIf} $AutomaticInstall = 0\r
345     IntOp $R6 $R6 + 1\r
346     !insertmacro MUI_INSTALLOPTIONS_READ $ConfigDirectorName "ConfigPage2.ini" "Field $R6" "State"\r
347     IntOp $R6 $R6 + 1\r
348 \r
349     ${If} $AutomaticInstall = 0\r
350       IntOp $R0 $NewComponents & ${ComponentsDirectorAndTextGuiConsoles}\r
351       ${If} $R0 <> 0\r
352         IntOp $R6 $R6 + 1\r
353         !insertmacro MUI_INSTALLOPTIONS_READ $ConfigDirectorPort "ConfigPage2.ini" "Field $R6" "State"\r
354         IntOp $R6 $R6 + 1\r
355       ${EndIf}\r
356 \r
357       IntOp $R0 $NewComponents & ${ComponentDirector}\r
358       ${If} $R0 <> 0\r
359         IntOp $R6 $R6 + 1\r
360         !insertmacro MUI_INSTALLOPTIONS_READ $ConfigDirectorMaxJobs "ConfigPage2.ini" "Field $R6" "State"\r
361         IntOp $R6 $R6 + 1\r
362       ${EndIf}\r
363     ${EndIf}\r
364   ${EndIf}\r
365 \r
366   IntOp $R0 $NewComponents & ${ComponentsTextAndGuiConsoles}\r
367   ${If} $R0 <> 0\r
368   ${OrIf} $AutomaticInstall = 0\r
369     IntOp $R0 $NewComponents & ${ComponentsDirectorAndTextGuiConsoles}\r
370     ${If} $R0 <> 0\r
371       IntOp $R6 $R6 + 1\r
372       !insertmacro MUI_INSTALLOPTIONS_READ $ConfigDirectorPassword "ConfigPage2.ini" "Field $R6" "State"\r
373       IntOp $R6 $R6 + 1\r
374     ${EndIf}\r
375   ${EndIf}\r
376 \r
377   IntOp $R0 $NewComponents & ${ComponentDirector}\r
378   ${If} $R0 <> 0\r
379     IntOp $R6 $R6 + 1\r
380     !insertmacro MUI_INSTALLOPTIONS_READ $ConfigDirectorMailServer "ConfigPage2.ini" "Field $R6" "State"\r
381     IntOp $R6 $R6 + 2\r
382     !insertmacro MUI_INSTALLOPTIONS_READ $ConfigDirectorMailAddress "ConfigPage2.ini" "Field $R6" "State"\r
383     IntOp $R6 $R6 + 2\r
384     !insertmacro MUI_INSTALLOPTIONS_READ $R5 "ConfigPage2.ini" "Field $R6" "State"\r
385     ${If} $R5 = 1\r
386       StrCpy $ConfigDirectorDB 1\r
387     ${Endif}\r
388     IntOp $R6 $R6 + 1\r
389     !insertmacro MUI_INSTALLOPTIONS_READ $R5 "ConfigPage2.ini" "Field $R6" "State"\r
390     ${If} $R5 = 1\r
391       StrCpy $ConfigDirectorDB 2\r
392     ${Endif}\r
393     IntOp $R6 $R6 + 1\r
394     !insertmacro MUI_INSTALLOPTIONS_READ $R5 "ConfigPage2.ini" "Field $R6" "State"\r
395     ${If} $R5 = 1\r
396       StrCpy $ConfigDirectorDB 3\r
397     ${Endif}\r
398     IntOp $R6 $R6 + 1\r
399 \r
400     ${If} $AutomaticInstall = 0\r
401       !insertmacro MUI_INSTALLOPTIONS_READ $ConfigDirectorInstallService "ConfigPage2.ini" "Field $R6" "State"\r
402       IntOp $R6 $R6 + 1\r
403       !insertmacro MUI_INSTALLOPTIONS_READ $ConfigDirectorStartService "ConfigPage2.ini" "Field $R6" "State"\r
404       IntOp $R6 $R6 + 1\r
405     ${EndIf}\r
406   ${Else}\r
407     IntOp $R0 $NewComponents & ${ComponentsTextAndGuiConsoles}\r
408     ${If} $R0 <> 0\r
409       IntOp $R6 $R6 + 1\r
410       !insertmacro MUI_INSTALLOPTIONS_READ $ConfigDirectorAddress "ConfigPage2.ini" "Field $R6" "State"\r
411       IntOp $R6 $R6 + 1\r
412     ${EndIf}\r
413   ${EndIf}\r
414 \r
415   ${If} $AutomaticInstall = 0\r
416     IntOp $R0 $NewComponents & ${ComponentsFileAndStorageAndDirector}\r
417     ${If} $R0 <> 0\r
418       IntOp $R6 $R6 + 2\r
419       !insertmacro MUI_INSTALLOPTIONS_READ $ConfigMonitorName "ConfigPage2.ini" "Field $R6" "State"\r
420       IntOp $R6 $R6 + 2\r
421       !insertmacro MUI_INSTALLOPTIONS_READ $ConfigMonitorPassword "ConfigPage2.ini" "Field $R6" "State"\r
422     ${EndIf}\r
423   ${EndIf}\r
424 FunctionEnd\r
425 \r
426 Function LeaveConfigPage2\r
427   ${If} $AutomaticInstall = 0\r
428     StrCpy $R6 4\r
429 \r
430     IntOp $R0 $NewComponents & ${ComponentsDirectorAndTextGuiConsoles}\r
431     ${If} $R0 <> 0\r
432       IntOp $R6 $R6 + 1\r
433       !insertmacro MUI_INSTALLOPTIONS_READ $R0 "ConfigPage2.ini" "Field $R6" "State"\r
434       ${If} $R0 < 1024\r
435       ${OrIf} $R0 > 65535\r
436         MessageBox MB_OK "Port must be between 1024 and 65535 inclusive."\r
437         Abort\r
438       ${EndIf}\r
439       IntOp $R6 $R6 + 1\r
440     ${EndIf}\r
441 \r
442     IntOp $R0 $NewComponents & ${ComponentDirector}\r
443     ${If} $R0 <> 0\r
444       IntOp $R6 $R6 + 1\r
445       !insertmacro MUI_INSTALLOPTIONS_READ $R0 "ConfigPage2.ini" "Field $R6" "State"\r
446       ${If} $R0 < 1\r
447       ${OrIf} $R0 > 99\r
448         MessageBox MB_OK "Max Jobs must be between 1 and 99 inclusive."\r
449         Abort\r
450       ${EndIf}\r
451       IntOp $R6 $R6 + 1\r
452     ${EndIf}\r
453   ${EndIf}\r
454 FunctionEnd\r