Statistiques
| Révision :

root / tmp / org.txm.setups / nsis / Examples / FileFunc.nsi @ 1279

Historique | Voir | Annoter | Télécharger (18,93 ko)

1 728 mdecorde
;_____________________________________________________________________________
2 728 mdecorde
;
3 728 mdecorde
;                          File Functions
4 728 mdecorde
;_____________________________________________________________________________
5 728 mdecorde
;
6 728 mdecorde
; 2006 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
7 728 mdecorde
8 728 mdecorde
Name "File Functions"
9 728 mdecorde
OutFile "FileFunc.exe"
10 728 mdecorde
Caption "$(^Name)"
11 728 mdecorde
XPStyle on
12 728 mdecorde
RequestExecutionLevel user
13 728 mdecorde
14 728 mdecorde
!include "WinMessages.nsh"
15 728 mdecorde
!include "FileFunc.nsh"
16 728 mdecorde
17 728 mdecorde
Var INI
18 728 mdecorde
Var HWND
19 728 mdecorde
Var STATE
20 728 mdecorde
Var FUNCTION
21 728 mdecorde
Var LOCATE1
22 728 mdecorde
Var LOCATE2
23 728 mdecorde
Var GETSIZE1
24 728 mdecorde
Var GETSIZE2
25 728 mdecorde
Var GETSIZE3
26 728 mdecorde
Var GETSIZE4
27 728 mdecorde
Var GETSIZE5
28 728 mdecorde
Var GETSIZE6
29 728 mdecorde
Var DRIVESPACE1
30 728 mdecorde
Var DRIVESPACE2
31 728 mdecorde
Var GETDRIVES1
32 728 mdecorde
Var GETTIME1
33 728 mdecorde
Var GETTIME2
34 728 mdecorde
Var GETFILEATTRIBUTES1
35 728 mdecorde
Var GETFILEATTRIBUTES2
36 728 mdecorde
Var GETFILEVERSION1
37 728 mdecorde
Var GETOPTIONS1
38 728 mdecorde
Var GETOPTIONS2
39 728 mdecorde
Var GETROOT1
40 728 mdecorde
Var GETPARENT1
41 728 mdecorde
Var GETFILENAME1
42 728 mdecorde
Var GETBASENAME1
43 728 mdecorde
Var GETFILEEXT1
44 728 mdecorde
Var BANNERTRIMPATH1
45 728 mdecorde
Var BANNERTRIMPATH2
46 728 mdecorde
Var DIRSTATE1
47 728 mdecorde
48 728 mdecorde
Page Custom ShowCustom LeaveCustom
49 728 mdecorde
50 728 mdecorde
Function ShowCustom
51 728 mdecorde
	InstallOptions::initDialog "$INI"
52 728 mdecorde
	Pop $hwnd
53 728 mdecorde
	GetDlgItem $1 $HWND 1201
54 728 mdecorde
	ShowWindow $1 0
55 728 mdecorde
	GetDlgItem $1 $HWND 1202
56 728 mdecorde
	ShowWindow $1 0
57 728 mdecorde
	GetDlgItem $1 $HWND 1206
58 728 mdecorde
	EnableWindow $1 0
59 728 mdecorde
	SendMessage $1 ${WM_ENABLE} 1 0
60 728 mdecorde
	StrCpy $LOCATE1 $DOCUMENTS
61 728 mdecorde
	StrCpy $LOCATE2 '/L=FD /M=*.* /S=0B /G=1 /B=0'
62 728 mdecorde
	StrCpy $GETSIZE1 '$WINDIR'
63 728 mdecorde
	StrCpy $GETSIZE2 '/M=Explorer.exe /S=0K /G=0'
64 728 mdecorde
	StrCpy $GETSIZE3 '$PROGRAMFILES\Common Files'
65 728 mdecorde
	StrCpy $GETSIZE4 '/S=0M'
66 728 mdecorde
	StrCpy $GETSIZE5 '$WINDIR'
67 728 mdecorde
	StrCpy $GETSIZE6 '/G=0'
68 728 mdecorde
	StrCpy $DRIVESPACE1 'C:\'
69 728 mdecorde
	StrCpy $DRIVESPACE2 '/D=F /S=M'
70 728 mdecorde
	StrCpy $GETDRIVES1 'FDD+CDROM'
71 728 mdecorde
	StrCpy $GETTIME1 '$WINDIR\Explorer.exe'
72 728 mdecorde
	StrCpy $GETTIME2 'C'
73 728 mdecorde
	StrCpy $GETFILEATTRIBUTES1 'C:\IO.SYS'
74 728 mdecorde
	StrCpy $GETFILEATTRIBUTES2 'ALL'
75 728 mdecorde
	StrCpy $GETFILEVERSION1 '$WINDIR\Explorer.exe'
76 728 mdecorde
	StrCpy $GETOPTIONS1 '/SILENT=yes /INSTDIR="$PROGRAMFILES\Common Files"'
77 728 mdecorde
	StrCpy $GETOPTIONS2 '/INSTDIR='
78 728 mdecorde
	StrCpy $GETROOT1 'C:\path\file.dll'
79 728 mdecorde
	StrCpy $GETPARENT1 'C:\path\file.dll'
80 728 mdecorde
	StrCpy $GETFILENAME1 'C:\path\file.dll'
81 728 mdecorde
	StrCpy $GETBASENAME1 'C:\path\file.dll'
82 728 mdecorde
	StrCpy $GETFILEEXT1 'C:\path\file.dll'
83 728 mdecorde
	StrCpy $BANNERTRIMPATH1 'C:\Server\Documents\Terminal\license.htm'
84 728 mdecorde
	StrCpy $BANNERTRIMPATH2 '34A'
85 728 mdecorde
	StrCpy $DIRSTATE1 '$TEMP'
86 728 mdecorde
87 728 mdecorde
	GetDlgItem $1 $HWND 1203
88 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$LOCATE1"
89 728 mdecorde
	GetDlgItem $1 $HWND 1205
90 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$LOCATE2"
91 728 mdecorde
	InstallOptions::show
92 728 mdecorde
	Pop $0
93 728 mdecorde
FunctionEnd
94 728 mdecorde
95 728 mdecorde
Function LeaveCustom
96 728 mdecorde
	ReadINIStr $STATE $INI "Field 1" "State"
97 728 mdecorde
	ReadINIStr $R1 $INI "Field 2" "State"
98 728 mdecorde
	ReadINIStr $R2 $INI "Field 3" "State"
99 728 mdecorde
	ReadINIStr $R3 $INI "Field 4" "State"
100 728 mdecorde
	ReadINIStr $R4 $INI "Field 5" "State"
101 728 mdecorde
	ReadINIStr $0 $INI "Settings" "State"
102 728 mdecorde
	StrCmp $0 6 view
103 728 mdecorde
	StrCmp $0 0 Enter
104 728 mdecorde
	goto main
105 728 mdecorde
106 728 mdecorde
	view:
107 728 mdecorde
	StrCpy $0 '$$'
108 728 mdecorde
	StrCpy $1 'n'
109 728 mdecorde
	StrCpy $2 'r'
110 728 mdecorde
	StrCmp $R4 "LocateCallback" 0 +3
111 728 mdecorde
	StrCpy $R0 `Function LocateCallback$\r$\n	MessageBox MB_OKCANCEL '$0$$R9    "path\name"=[$$R9]$0\$1$0$$R8    "path"          =[$$R8]$0\$1$0$$R7    "name"        =[$$R7]$0\$1$0$$R6    "size"           =[$$R6]' IDOK +2$\r$\n	StrCpy $$R0 StopLocate$\r$\n$\r$\n	Push $$R0$\r$\nFunctionEnd`
112 728 mdecorde
	goto send
113 728 mdecorde
	StrCmp $R4 "GetDrivesCallback" 0 error
114 728 mdecorde
	StrCpy $R0 `Function GetDrivesCallback$\r$\n	MessageBox MB_OKCANCEL '$0$$9    "drive letter"=[$$9]$0\$1$0$$8    "drive type" =[$$8]' IDOK +2$\r$\n	StrCpy $$R0 StopGetDrives$\r$\n	StrCpy $$R5 '$$R5$$9  [$$8 Drive]$$\$2$$\$1'$\r$\n$\r$\n	Push $$R0$\r$\nFunctionEnd`
115 728 mdecorde
	goto send
116 728 mdecorde
117 728 mdecorde
	main:
118 728 mdecorde
	StrCmp $FUNCTION '' DefaultSend
119 728 mdecorde
	StrCmp $FUNCTION Locate 0 +4
120 728 mdecorde
	StrCpy $LOCATE1 $R2
121 728 mdecorde
	StrCpy $LOCATE2 $R3
122 728 mdecorde
	goto DefaultSend
123 728 mdecorde
	StrCmp $FUNCTION GetSize1 0 +4
124 728 mdecorde
	StrCpy $GETSIZE1 $R2
125 728 mdecorde
	StrCpy $GETSIZE2 $R3
126 728 mdecorde
	goto DefaultSend
127 728 mdecorde
	StrCmp $FUNCTION GetSize2 0 +4
128 728 mdecorde
	StrCpy $GETSIZE3 $R2
129 728 mdecorde
	StrCpy $GETSIZE4 $R3
130 728 mdecorde
	goto DefaultSend
131 728 mdecorde
	StrCmp $FUNCTION GetSize3 0 +4
132 728 mdecorde
	StrCpy $GETSIZE5 $R2
133 728 mdecorde
	StrCpy $GETSIZE6 $R3
134 728 mdecorde
	goto DefaultSend
135 728 mdecorde
	StrCmp $FUNCTION DriveSpace 0 +4
136 728 mdecorde
	StrCpy $DRIVESPACE1 $R1
137 728 mdecorde
	StrCpy $DRIVESPACE2 $R3
138 728 mdecorde
	goto DefaultSend
139 728 mdecorde
	StrCmp $FUNCTION GetDrives 0 +3
140 728 mdecorde
	StrCpy $GETDRIVES1 $R1
141 728 mdecorde
	goto DefaultSend
142 728 mdecorde
	StrCmp $FUNCTION GetTime 0 +4
143 728 mdecorde
	StrCpy $GETTIME1 $R1
144 728 mdecorde
	StrCpy $GETTIME2 $R3
145 728 mdecorde
	goto DefaultSend
146 728 mdecorde
	StrCmp $FUNCTION GetFileAttributes 0 +4
147 728 mdecorde
	StrCpy $GETFILEATTRIBUTES1 $R1
148 728 mdecorde
	StrCpy $GETFILEATTRIBUTES2 $R3
149 728 mdecorde
	goto DefaultSend
150 728 mdecorde
	StrCmp $FUNCTION GetFileVersion 0 +3
151 728 mdecorde
	StrCpy $GETFILEVERSION1 $R1
152 728 mdecorde
	goto DefaultSend
153 728 mdecorde
	StrCmp $FUNCTION GetOptions 0 +4
154 728 mdecorde
	StrCpy $GETOPTIONS1 $R1
155 728 mdecorde
	StrCpy $GETOPTIONS2 $R3
156 728 mdecorde
	goto DefaultSend
157 728 mdecorde
	StrCmp $FUNCTION GetRoot 0 +3
158 728 mdecorde
	StrCpy $GETROOT1 $R1
159 728 mdecorde
	goto DefaultSend
160 728 mdecorde
	StrCmp $FUNCTION GetParent 0 +3
161 728 mdecorde
	StrCpy $GETPARENT1 $R1
162 728 mdecorde
	goto DefaultSend
163 728 mdecorde
	StrCmp $FUNCTION GetFileName 0 +3
164 728 mdecorde
	StrCpy $GETFILENAME1 $R1
165 728 mdecorde
	goto DefaultSend
166 728 mdecorde
	StrCmp $FUNCTION GetBaseName 0 +3
167 728 mdecorde
	StrCpy $GETBASENAME1 $R1
168 728 mdecorde
	goto DefaultSend
169 728 mdecorde
	StrCmp $FUNCTION GetFileExt 0 +3
170 728 mdecorde
	StrCpy $GETFILEEXT1 $R1
171 728 mdecorde
	goto DefaultSend
172 728 mdecorde
	StrCmp $FUNCTION BannerTrimPath 0 +4
173 728 mdecorde
	StrCpy $BANNERTRIMPATH1 $R1
174 728 mdecorde
	StrCpy $BANNERTRIMPATH2 $R3
175 728 mdecorde
	goto DefaultSend
176 728 mdecorde
	StrCmp $FUNCTION DirState 0 +2
177 728 mdecorde
	StrCpy $DIRSTATE1 $R2
178 728 mdecorde
179 728 mdecorde
	DefaultSend:
180 728 mdecorde
	GetDlgItem $1 $HWND 1201
181 728 mdecorde
	EnableWindow $1 1
182 728 mdecorde
	ShowWindow $1 0
183 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
184 728 mdecorde
	GetDlgItem $1 $HWND 1202
185 728 mdecorde
	EnableWindow $1 1
186 728 mdecorde
	ShowWindow $1 0
187 728 mdecorde
	GetDlgItem $1 $HWND 1203
188 728 mdecorde
	EnableWindow $1 1
189 728 mdecorde
	ShowWindow $1 0
190 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
191 728 mdecorde
	GetDlgItem $1 $HWND 1204
192 728 mdecorde
	EnableWindow $1 1
193 728 mdecorde
	ShowWindow $1 0
194 728 mdecorde
	GetDlgItem $1 $HWND 1205
195 728 mdecorde
	EnableWindow $1 1
196 728 mdecorde
	GetDlgItem $1 $HWND 1206
197 728 mdecorde
	ShowWindow $1 0
198 728 mdecorde
	EnableWindow $1 0
199 728 mdecorde
	GetDlgItem $1 $HWND 1207
200 728 mdecorde
	ShowWindow $1 0
201 728 mdecorde
	GetDlgItem $1 $HWND 1208
202 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
203 728 mdecorde
	GetDlgItem $1 $HWND 1209
204 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
205 728 mdecorde
	GetDlgItem $1 $HWND 1210
206 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
207 728 mdecorde
	GetDlgItem $1 $HWND 1211
208 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
209 728 mdecorde
210 728 mdecorde
	ReadINIStr $0 $INI "Field 1" "State"
211 728 mdecorde
	StrCmp $0 "  1. Locate" 0 GetSize1Send
212 728 mdecorde
	StrCpy $FUNCTION Locate
213 728 mdecorde
	GetDlgItem $1 $HWND 1203
214 728 mdecorde
	ShowWindow $1 1
215 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$LOCATE1"
216 728 mdecorde
	GetDlgItem $1 $HWND 1204
217 728 mdecorde
	ShowWindow $1 1
218 728 mdecorde
	GetDlgItem $1 $HWND 1205
219 728 mdecorde
	ShowWindow $1 1
220 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$LOCATE2"
221 728 mdecorde
	GetDlgItem $1 $HWND 1206
222 728 mdecorde
	ShowWindow $1 1
223 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:LocateCallback"
224 728 mdecorde
	GetDlgItem $1 $HWND 1207
225 728 mdecorde
	ShowWindow $1 1
226 728 mdecorde
	GetDlgItem $1 $HWND 1209
227 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Path"
228 728 mdecorde
	GetDlgItem $1 $HWND 1210
229 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Options"
230 728 mdecorde
	GetDlgItem $1 $HWND 1211
231 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Function"
232 728 mdecorde
	abort
233 728 mdecorde
234 728 mdecorde
	GetSize1Send:
235 728 mdecorde
	StrCmp $0 "  2. GetSize                 (file)" 0 GetSize2Send
236 728 mdecorde
	StrCpy $FUNCTION 'GetSize1'
237 728 mdecorde
	GetDlgItem $1 $HWND 1203
238 728 mdecorde
	ShowWindow $1 1
239 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETSIZE1"
240 728 mdecorde
	GetDlgItem $1 $HWND 1204
241 728 mdecorde
	ShowWindow $1 1
242 728 mdecorde
	GetDlgItem $1 $HWND 1205
243 728 mdecorde
	ShowWindow $1 1
244 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETSIZE2"
245 728 mdecorde
	GetDlgItem $1 $HWND 1209
246 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:File"
247 728 mdecorde
	GetDlgItem $1 $HWND 1210
248 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Options"
249 728 mdecorde
	Abort
250 728 mdecorde
251 728 mdecorde
	GetSize2Send:
252 728 mdecorde
	StrCmp $0 "                                   (directory)" 0 GetSize3Send
253 728 mdecorde
	StrCpy $FUNCTION 'GetSize2'
254 728 mdecorde
	GetDlgItem $1 $HWND 1203
255 728 mdecorde
	ShowWindow $1 1
256 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETSIZE3"
257 728 mdecorde
	GetDlgItem $1 $HWND 1204
258 728 mdecorde
	ShowWindow $1 1
259 728 mdecorde
	GetDlgItem $1 $HWND 1205
260 728 mdecorde
	ShowWindow $1 1
261 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETSIZE4"
262 728 mdecorde
	GetDlgItem $1 $HWND 1209
263 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Directory"
264 728 mdecorde
	GetDlgItem $1 $HWND 1210
265 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Options"
266 728 mdecorde
	Abort
267 728 mdecorde
268 728 mdecorde
	GetSize3Send:
269 728 mdecorde
	StrCmp $0 "                                   (no size, no subdir)" 0 DriveSpaceSend
270 728 mdecorde
	StrCpy $FUNCTION 'GetSize3'
271 728 mdecorde
	GetDlgItem $1 $HWND 1203
272 728 mdecorde
	ShowWindow $1 1
273 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETSIZE5"
274 728 mdecorde
	GetDlgItem $1 $HWND 1204
275 728 mdecorde
	ShowWindow $1 1
276 728 mdecorde
	GetDlgItem $1 $HWND 1205
277 728 mdecorde
	ShowWindow $1 1
278 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETSIZE6"
279 728 mdecorde
	GetDlgItem $1 $HWND 1209
280 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Directory"
281 728 mdecorde
	GetDlgItem $1 $HWND 1210
282 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Options"
283 728 mdecorde
	Abort
284 728 mdecorde
285 728 mdecorde
	DriveSpaceSend:
286 728 mdecorde
	StrCmp $0 "  3. DriveSpace" 0 GetDrivesSend
287 728 mdecorde
	StrCpy $FUNCTION DriveSpace
288 728 mdecorde
	GetDlgItem $1 $HWND 1201
289 728 mdecorde
	ShowWindow $1 1
290 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$DRIVESPACE1"
291 728 mdecorde
	GetDlgItem $1 $HWND 1202
292 728 mdecorde
	ShowWindow $1 1
293 728 mdecorde
	EnableWindow $1 0
294 728 mdecorde
	GetDlgItem $1 $HWND 1205
295 728 mdecorde
	ShowWindow $1 1
296 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$DRIVESPACE2"
297 728 mdecorde
	GetDlgItem $1 $HWND 1206
298 728 mdecorde
	ShowWindow $1 0
299 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
300 728 mdecorde
	GetDlgItem $1 $HWND 1207
301 728 mdecorde
	ShowWindow $1 0
302 728 mdecorde
	GetDlgItem $1 $HWND 1209
303 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Drive"
304 728 mdecorde
	GetDlgItem $1 $HWND 1210
305 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Options"
306 728 mdecorde
	abort
307 728 mdecorde
308 728 mdecorde
	GetDrivesSend:
309 728 mdecorde
	StrCmp $0 "  4. GetDrives             (by type)" 0 GetDrives2Send
310 728 mdecorde
	StrCpy $FUNCTION GetDrives
311 728 mdecorde
	GetDlgItem $1 $HWND 1201
312 728 mdecorde
	ShowWindow $1 1
313 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETDRIVES1"
314 728 mdecorde
	GetDlgItem $1 $HWND 1202
315 728 mdecorde
	ShowWindow $1 1
316 728 mdecorde
	EnableWindow $1 0
317 728 mdecorde
	GetDlgItem $1 $HWND 1205
318 728 mdecorde
	ShowWindow $1 0
319 728 mdecorde
	GetDlgItem $1 $HWND 1206
320 728 mdecorde
	ShowWindow $1 1
321 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:GetDrivesCallback"
322 728 mdecorde
	GetDlgItem $1 $HWND 1207
323 728 mdecorde
	ShowWindow $1 1
324 728 mdecorde
	GetDlgItem $1 $HWND 1209
325 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
326 728 mdecorde
	GetDlgItem $1 $HWND 1211
327 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Function"
328 728 mdecorde
	abort
329 728 mdecorde
330 728 mdecorde
	GetDrives2Send:
331 728 mdecorde
	StrCmp $0 "                                   (all by letter)" 0 GetTime1Send
332 728 mdecorde
	StrCpy $FUNCTION ''
333 728 mdecorde
	GetDlgItem $1 $HWND 1201
334 728 mdecorde
	ShowWindow $1 1
335 728 mdecorde
	EnableWindow $1 0
336 728 mdecorde
	SendMessage $1 ${WM_ENABLE} 1 0
337 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:ALL"
338 728 mdecorde
	GetDlgItem $1 $HWND 1202
339 728 mdecorde
	ShowWindow $1 1
340 728 mdecorde
	EnableWindow $1 0
341 728 mdecorde
	GetDlgItem $1 $HWND 1205
342 728 mdecorde
	ShowWindow $1 0
343 728 mdecorde
	GetDlgItem $1 $HWND 1206
344 728 mdecorde
	ShowWindow $1 1
345 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:GetDrivesCallback"
346 728 mdecorde
	GetDlgItem $1 $HWND 1207
347 728 mdecorde
	ShowWindow $1 1
348 728 mdecorde
	GetDlgItem $1 $HWND 1209
349 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
350 728 mdecorde
	GetDlgItem $1 $HWND 1211
351 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Function"
352 728 mdecorde
	abort
353 728 mdecorde
354 728 mdecorde
	GetTime1Send:
355 728 mdecorde
	StrCmp $0 "  5. GetTime                (local time)" 0 GetTime2Send
356 728 mdecorde
	StrCpy $FUNCTION ''
357 728 mdecorde
	GetDlgItem $1 $HWND 1201
358 728 mdecorde
	ShowWindow $1 1
359 728 mdecorde
	EnableWindow $1 0
360 728 mdecorde
	SendMessage $1 ${WM_ENABLE} 1 0
361 728 mdecorde
	GetDlgItem $1 $HWND 1202
362 728 mdecorde
	ShowWindow $1 1
363 728 mdecorde
	EnableWindow $1 0
364 728 mdecorde
	GetDlgItem $1 $HWND 1205
365 728 mdecorde
	ShowWindow $1 1
366 728 mdecorde
	EnableWindow $1 1
367 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:L"
368 728 mdecorde
	GetDlgItem $1 $HWND 1210
369 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
370 728 mdecorde
	Abort
371 728 mdecorde
372 728 mdecorde
	GetTime2Send:
373 728 mdecorde
	StrCmp $0 "                                   (file time)" 0 GetFileAttributesSend
374 728 mdecorde
	StrCpy $FUNCTION GetTime
375 728 mdecorde
	GetDlgItem $1 $HWND 1201
376 728 mdecorde
	ShowWindow $1 1
377 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETTIME1"
378 728 mdecorde
	GetDlgItem $1 $HWND 1202
379 728 mdecorde
	ShowWindow $1 1
380 728 mdecorde
	GetDlgItem $1 $HWND 1205
381 728 mdecorde
	ShowWindow $1 1
382 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETTIME2"
383 728 mdecorde
	GetDlgItem $1 $HWND 1209
384 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:File"
385 728 mdecorde
	GetDlgItem $1 $HWND 1210
386 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
387 728 mdecorde
	Abort
388 728 mdecorde
389 728 mdecorde
	GetFileAttributesSend:
390 728 mdecorde
	StrCmp $0 "  6. GetFileAttributes" 0 GetFileVersionSend
391 728 mdecorde
	StrCpy $FUNCTION GetFileAttributes
392 728 mdecorde
	GetDlgItem $1 $HWND 1201
393 728 mdecorde
	ShowWindow $1 1
394 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETFILEATTRIBUTES1"
395 728 mdecorde
	GetDlgItem $1 $HWND 1202
396 728 mdecorde
	ShowWindow $1 1
397 728 mdecorde
	GetDlgItem $1 $HWND 1205
398 728 mdecorde
	ShowWindow $1 1
399 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETFILEATTRIBUTES2"
400 728 mdecorde
	GetDlgItem $1 $HWND 1209
401 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Path"
402 728 mdecorde
	GetDlgItem $1 $HWND 1210
403 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Attrib"
404 728 mdecorde
	Abort
405 728 mdecorde
406 728 mdecorde
	GetFileVersionSend:
407 728 mdecorde
	StrCmp $0 "  7. GetFileVersion" 0 GetCmdSend
408 728 mdecorde
	StrCpy $FUNCTION GetFileVersion
409 728 mdecorde
	GetDlgItem $1 $HWND 1201
410 728 mdecorde
	ShowWindow $1 1
411 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETFILEVERSION1"
412 728 mdecorde
	GetDlgItem $1 $HWND 1202
413 728 mdecorde
	ShowWindow $1 1
414 728 mdecorde
	GetDlgItem $1 $HWND 1205
415 728 mdecorde
	ShowWindow $1 0
416 728 mdecorde
	GetDlgItem $1 $HWND 1209
417 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:File"
418 728 mdecorde
	Abort
419 728 mdecorde
420 728 mdecorde
	GetCmdSend:
421 728 mdecorde
	StrCmp $0 "  8. GetExeName" +3
422 728 mdecorde
	StrCmp $0 "  9. GetExePath" +2
423 728 mdecorde
	StrCmp $0 "10. GetParameters" 0 GetOptionsSend
424 728 mdecorde
	StrCpy $FUNCTION ''
425 728 mdecorde
	GetDlgItem $1 $HWND 1205
426 728 mdecorde
	ShowWindow $1 0
427 728 mdecorde
	Abort
428 728 mdecorde
429 728 mdecorde
	GetOptionsSend:
430 728 mdecorde
	StrCmp $0 "11. GetOptions" 0 GetRootSend
431 728 mdecorde
	StrCpy $FUNCTION GetOptions
432 728 mdecorde
	GetDlgItem $1 $HWND 1201
433 728 mdecorde
	ShowWindow $1 1
434 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETOPTIONS1"
435 728 mdecorde
	GetDlgItem $1 $HWND 1202
436 728 mdecorde
	ShowWindow $1 1
437 728 mdecorde
	EnableWindow $1 0
438 728 mdecorde
	GetDlgItem $1 $HWND 1205
439 728 mdecorde
	ShowWindow $1 1
440 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETOPTIONS2"
441 728 mdecorde
	GetDlgItem $1 $HWND 1209
442 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Parameters"
443 728 mdecorde
	GetDlgItem $1 $HWND 1210
444 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
445 728 mdecorde
	Abort
446 728 mdecorde
447 728 mdecorde
	GetRootSend:
448 728 mdecorde
	StrCmp $0 "12. GetRoot" 0 GetParentSend
449 728 mdecorde
	StrCpy $FUNCTION GetRoot
450 728 mdecorde
	GetDlgItem $1 $HWND 1201
451 728 mdecorde
	ShowWindow $1 1
452 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETROOT1"
453 728 mdecorde
	GetDlgItem $1 $HWND 1202
454 728 mdecorde
	ShowWindow $1 1
455 728 mdecorde
	GetDlgItem $1 $HWND 1205
456 728 mdecorde
	ShowWindow $1 0
457 728 mdecorde
	GetDlgItem $1 $HWND 1209
458 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:FullPath"
459 728 mdecorde
	Abort
460 728 mdecorde
461 728 mdecorde
	GetParentSend:
462 728 mdecorde
	StrCmp $0 "13. GetParent" 0 GetFileNameSend
463 728 mdecorde
	StrCpy $FUNCTION GetParent
464 728 mdecorde
	GetDlgItem $1 $HWND 1201
465 728 mdecorde
	ShowWindow $1 1
466 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETPARENT1"
467 728 mdecorde
	GetDlgItem $1 $HWND 1202
468 728 mdecorde
	ShowWindow $1 1
469 728 mdecorde
	GetDlgItem $1 $HWND 1205
470 728 mdecorde
	ShowWindow $1 0
471 728 mdecorde
	GetDlgItem $1 $HWND 1209
472 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:PathString"
473 728 mdecorde
	Abort
474 728 mdecorde
475 728 mdecorde
	GetFileNameSend:
476 728 mdecorde
	StrCmp $0 "14. GetFileName" 0 GetBaseNameSend
477 728 mdecorde
	StrCpy $FUNCTION GetFileName
478 728 mdecorde
	GetDlgItem $1 $HWND 1201
479 728 mdecorde
	ShowWindow $1 1
480 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETFILENAME1"
481 728 mdecorde
	GetDlgItem $1 $HWND 1202
482 728 mdecorde
	ShowWindow $1 1
483 728 mdecorde
	GetDlgItem $1 $HWND 1205
484 728 mdecorde
	ShowWindow $1 0
485 728 mdecorde
	GetDlgItem $1 $HWND 1209
486 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:PathString"
487 728 mdecorde
	Abort
488 728 mdecorde
489 728 mdecorde
	GetBaseNameSend:
490 728 mdecorde
	StrCmp $0 "15. GetBaseName" 0 GetFileExtSend
491 728 mdecorde
	StrCpy $FUNCTION GetBaseName
492 728 mdecorde
	GetDlgItem $1 $HWND 1201
493 728 mdecorde
	ShowWindow $1 1
494 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETBASENAME1"
495 728 mdecorde
	GetDlgItem $1 $HWND 1202
496 728 mdecorde
	ShowWindow $1 1
497 728 mdecorde
	GetDlgItem $1 $HWND 1205
498 728 mdecorde
	ShowWindow $1 0
499 728 mdecorde
	GetDlgItem $1 $HWND 1209
500 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:FileString"
501 728 mdecorde
	Abort
502 728 mdecorde
503 728 mdecorde
	GetFileExtSend:
504 728 mdecorde
	StrCmp $0 "16. GetFileExt" 0 BannerTrimPathSend
505 728 mdecorde
	StrCpy $FUNCTION GetFileExt
506 728 mdecorde
	GetDlgItem $1 $HWND 1201
507 728 mdecorde
	ShowWindow $1 1
508 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETFILEEXT1"
509 728 mdecorde
	GetDlgItem $1 $HWND 1202
510 728 mdecorde
	ShowWindow $1 1
511 728 mdecorde
	GetDlgItem $1 $HWND 1205
512 728 mdecorde
	ShowWindow $1 0
513 728 mdecorde
	GetDlgItem $1 $HWND 1209
514 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:FileString"
515 728 mdecorde
	Abort
516 728 mdecorde
517 728 mdecorde
	BannerTrimPathSend:
518 728 mdecorde
	StrCmp $0 "17. BannerTrimPath" 0 DirStateSend
519 728 mdecorde
	StrCpy $FUNCTION BannerTrimPath
520 728 mdecorde
	GetDlgItem $1 $HWND 1201
521 728 mdecorde
	ShowWindow $1 1
522 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$BANNERTRIMPATH1"
523 728 mdecorde
	GetDlgItem $1 $HWND 1202
524 728 mdecorde
	ShowWindow $1 1
525 728 mdecorde
	EnableWindow $1 0
526 728 mdecorde
	GetDlgItem $1 $HWND 1205
527 728 mdecorde
	ShowWindow $1 1
528 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$BANNERTRIMPATH2"
529 728 mdecorde
	GetDlgItem $1 $HWND 1209
530 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:PathString"
531 728 mdecorde
	GetDlgItem $1 $HWND 1210
532 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
533 728 mdecorde
	Abort
534 728 mdecorde
535 728 mdecorde
	DirStateSend:
536 728 mdecorde
	StrCmp $0 "18. DirState" 0 RefreshShellIconsSend
537 728 mdecorde
	StrCpy $FUNCTION DirState
538 728 mdecorde
	GetDlgItem $1 $HWND 1203
539 728 mdecorde
	ShowWindow $1 1
540 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$DIRSTATE1"
541 728 mdecorde
	GetDlgItem $1 $HWND 1204
542 728 mdecorde
	ShowWindow $1 1
543 728 mdecorde
	GetDlgItem $1 $HWND 1205
544 728 mdecorde
	ShowWindow $1 0
545 728 mdecorde
	GetDlgItem $1 $HWND 1209
546 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Directory"
547 728 mdecorde
	Abort
548 728 mdecorde
549 728 mdecorde
	RefreshShellIconsSend:
550 728 mdecorde
	StrCmp $0 "19. RefreshShellIcons" 0 Abort
551 728 mdecorde
	StrCpy $FUNCTION ''
552 728 mdecorde
	GetDlgItem $1 $HWND 1205
553 728 mdecorde
	ShowWindow $1 0
554 728 mdecorde
555 728 mdecorde
	Abort:
556 728 mdecorde
	Abort
557 728 mdecorde
558 728 mdecorde
;=Enter=
559 728 mdecorde
	Enter:
560 728 mdecorde
	StrCpy $R0 ''
561 728 mdecorde
	StrCpy $R5 ''
562 728 mdecorde
563 728 mdecorde
	StrCmp $STATE "  1. Locate" Locate
564 728 mdecorde
	StrCmp $STATE "  2. GetSize                 (file)" GetSize
565 728 mdecorde
	StrCmp $STATE "                                   (directory)" GetSize
566 728 mdecorde
	StrCmp $STATE "                                   (no size, no subdir)" GetSize
567 728 mdecorde
	StrCmp $STATE "  3. DriveSpace" DriveSpace
568 728 mdecorde
	StrCmp $STATE "  4. GetDrives             (by type)" GetDrives
569 728 mdecorde
	StrCmp $STATE "                                   (all by letter)" GetDrives
570 728 mdecorde
	StrCmp $STATE "  5. GetTime                (local time)" GetTime
571 728 mdecorde
	StrCmp $STATE "                                   (file time)" GetTime
572 728 mdecorde
	StrCmp $STATE "  6. GetFileAttributes" GetFileAttributes
573 728 mdecorde
	StrCmp $STATE "  7. GetFileVersion" GetFileVersion
574 728 mdecorde
	StrCmp $STATE "  8. GetExeName" GetExeName
575 728 mdecorde
	StrCmp $STATE "  9. GetExePath" GetExePath
576 728 mdecorde
	StrCmp $STATE "10. GetParameters" GetParameters
577 728 mdecorde
	StrCmp $STATE "11. GetOptions" GetOptions
578 728 mdecorde
	StrCmp $STATE "12. GetRoot" GetRoot
579 728 mdecorde
	StrCmp $STATE "13. GetParent" GetParent
580 728 mdecorde
	StrCmp $STATE "14. GetFileName" GetFileName
581 728 mdecorde
	StrCmp $STATE "15. GetBaseName" GetBaseName
582 728 mdecorde
	StrCmp $STATE "16. GetFileExt" GetFileExt
583 728 mdecorde
	StrCmp $STATE "17. BannerTrimPath" BannerTrimPath
584 728 mdecorde
	StrCmp $STATE "18. DirState" DirState
585 728 mdecorde
	StrCmp $STATE "19. RefreshShellIcons" RefreshShellIcons
586 728 mdecorde
	Abort
587 728 mdecorde
588 728 mdecorde
	Locate:
589 728 mdecorde
	${Locate} "$R2" "$R3" "LocateCallback"
590 728 mdecorde
	IfErrors error
591 728 mdecorde
	StrCmp $R0 StopLocate 0 +3
592 728 mdecorde
	StrCpy $R0 'stopped'
593 728 mdecorde
	goto send
594 728 mdecorde
	StrCpy $R0 'done'
595 728 mdecorde
	goto send
596 728 mdecorde
597 728 mdecorde
	GetSize:
598 728 mdecorde
	${GetSize} "$R2" "$R3" $0 $1 $2
599 728 mdecorde
	IfErrors error
600 728 mdecorde
	StrCpy $R0 "Size=$0$\r$\nFiles=$1$\r$\nFolders=$2"
601 728 mdecorde
	goto send
602 728 mdecorde
603 728 mdecorde
	DriveSpace:
604 728 mdecorde
	${DriveSpace} "$R1" "$R3" $0
605 728 mdecorde
	IfErrors error
606 728 mdecorde
	StrCpy $R0 "$0"
607 728 mdecorde
	goto send
608 728 mdecorde
609 728 mdecorde
	GetDrives:
610 728 mdecorde
	${GetDrives} "$R1" "GetDrivesCallback"
611 728 mdecorde
	StrCmp $R0 StopGetDrives 0 +3
612 728 mdecorde
	StrCpy $R0 '$R5stopped'
613 728 mdecorde
	goto send
614 728 mdecorde
	StrCpy $R0 '$R5done'
615 728 mdecorde
	goto send
616 728 mdecorde
617 728 mdecorde
	GetTime:
618 728 mdecorde
	${GetTime} "$R1" "$R3" $0 $1 $2 $3 $4 $5 $6
619 728 mdecorde
	IfErrors error
620 728 mdecorde
	StrCpy $R0 'Date=$0/$1/$2 ($3)$\r$\nTime=$4:$5:$6'
621 728 mdecorde
	goto send
622 728 mdecorde
623 728 mdecorde
	GetFileAttributes:
624 728 mdecorde
	${GetFileAttributes} "$R1" "$R3" $0
625 728 mdecorde
	IfErrors error
626 728 mdecorde
	StrCpy $R0 '$0'
627 728 mdecorde
	goto send
628 728 mdecorde
629 728 mdecorde
	GetFileVersion:
630 728 mdecorde
	${GetFileVersion} "$R1" $0
631 728 mdecorde
	IfErrors error
632 728 mdecorde
	StrCpy $R0  '$0'
633 728 mdecorde
	goto send
634 728 mdecorde
635 728 mdecorde
	GetExeName:
636 728 mdecorde
	${GetExeName} $0
637 728 mdecorde
	StrCpy $R0 '$0'
638 728 mdecorde
	goto send
639 728 mdecorde
640 728 mdecorde
	GetExePath:
641 728 mdecorde
	${GetExePath} $0
642 728 mdecorde
	StrCpy $R0 '$0'
643 728 mdecorde
	goto send
644 728 mdecorde
645 728 mdecorde
	GetParameters:
646 728 mdecorde
	${GetParameters} $0
647 728 mdecorde
	StrCpy $R0 '$0'
648 728 mdecorde
	StrCmp $R0 '' 0 send
649 728 mdecorde
	StrCpy $R0 'no parameters'
650 728 mdecorde
	goto send
651 728 mdecorde
652 728 mdecorde
	GetOptions:
653 728 mdecorde
	${GetOptions} "$R1" "$R3" $0
654 728 mdecorde
	IfErrors error
655 728 mdecorde
	StrCpy $R0  '$0'
656 728 mdecorde
	goto send
657 728 mdecorde
658 728 mdecorde
	GetRoot:
659 728 mdecorde
	${GetRoot} "$R1" $0
660 728 mdecorde
	StrCpy $R0  '$0'
661 728 mdecorde
	goto send
662 728 mdecorde
663 728 mdecorde
	GetParent:
664 728 mdecorde
	${GetParent} "$R1" $0
665 728 mdecorde
	StrCpy $R0  '$0'
666 728 mdecorde
	goto send
667 728 mdecorde
668 728 mdecorde
	GetFileName:
669 728 mdecorde
	${GetFileName} "$R1" $0
670 728 mdecorde
	StrCpy $R0  '$0'
671 728 mdecorde
	goto send
672 728 mdecorde
673 728 mdecorde
	GetBaseName:
674 728 mdecorde
	${GetBaseName} "$R1" $0
675 728 mdecorde
	StrCpy $R0  '$0'
676 728 mdecorde
	goto send
677 728 mdecorde
678 728 mdecorde
	GetFileExt:
679 728 mdecorde
	${GetFileExt} "$R1" $0
680 728 mdecorde
	StrCpy $R0  '$0'
681 728 mdecorde
	goto send
682 728 mdecorde
683 728 mdecorde
	BannerTrimPath:
684 728 mdecorde
	${BannerTrimPath} "$R1" "$R3" $0
685 728 mdecorde
	StrCpy $R0  '$0'
686 728 mdecorde
	goto send
687 728 mdecorde
688 728 mdecorde
	DirState:
689 728 mdecorde
	${DirState} "$R2" $0
690 728 mdecorde
	StrCpy $R0  '$0'
691 728 mdecorde
	goto send
692 728 mdecorde
693 728 mdecorde
	RefreshShellIcons:
694 728 mdecorde
	${RefreshShellIcons}
695 728 mdecorde
	StrCpy $R0 'done'
696 728 mdecorde
	goto send
697 728 mdecorde
698 728 mdecorde
	error:
699 728 mdecorde
	StrCpy $R0 'error'
700 728 mdecorde
701 728 mdecorde
	send:
702 728 mdecorde
	GetDlgItem $1 $HWND 1208
703 728 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$R0"
704 728 mdecorde
705 728 mdecorde
	abort
706 728 mdecorde
FunctionEnd
707 728 mdecorde
708 728 mdecorde
Function LocateCallback
709 728 mdecorde
	MessageBox MB_OKCANCEL '$$R9    "path\name"=[$R9]$\n$$R8    "path"          =[$R8]$\n$$R7    "name"        =[$R7]$\n$$R6    "size"           =[$R6]' IDOK +2
710 728 mdecorde
	StrCpy $R0 StopLocate
711 728 mdecorde
712 728 mdecorde
	Push $R0
713 728 mdecorde
FunctionEnd
714 728 mdecorde
715 728 mdecorde
Function GetDrivesCallback
716 728 mdecorde
	MessageBox MB_OKCANCEL '$$9    "drive letter"=[$9]$\n$$8    "drive type" =[$8]' IDOK +2
717 728 mdecorde
	StrCpy $R0 StopGetDrives
718 728 mdecorde
	StrCpy $R5 '$R5$9  [$8 Drive]$\r$\n'
719 728 mdecorde
720 728 mdecorde
	Push $R0
721 728 mdecorde
FunctionEnd
722 728 mdecorde
723 728 mdecorde
Function .onInit
724 728 mdecorde
	InitPluginsDir
725 728 mdecorde
	GetTempFileName $INI $PLUGINSDIR
726 728 mdecorde
	File /oname=$INI "FileFunc.ini"
727 728 mdecorde
FunctionEnd
728 728 mdecorde
729 728 mdecorde
Page instfiles
730 728 mdecorde
731 728 mdecorde
Section "Empty"
732 728 mdecorde
SectionEnd