Statistiques
| Révision :

root / tmp / org.txm.setups / nsis-2.5 / Examples / TextFunc.nsi @ 3117

Historique | Voir | Annoter | Télécharger (23,66 ko)

1 2961 mdecorde
;_____________________________________________________________________________
2 2961 mdecorde
;
3 2961 mdecorde
;                          Text Functions
4 2961 mdecorde
;_____________________________________________________________________________
5 2961 mdecorde
;
6 2961 mdecorde
; 2006 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
7 2961 mdecorde
8 2961 mdecorde
Name "Text Functions"
9 2961 mdecorde
OutFile "TextFunc.exe"
10 2961 mdecorde
Caption "$(^Name)"
11 2961 mdecorde
XPStyle on
12 2961 mdecorde
RequestExecutionLevel user
13 2961 mdecorde
14 2961 mdecorde
!include "WinMessages.nsh"
15 2961 mdecorde
!include "TextFunc.nsh"
16 2961 mdecorde
17 2961 mdecorde
Var HWND
18 2961 mdecorde
Var INI
19 2961 mdecorde
Var LOG
20 2961 mdecorde
Var PROJECT
21 2961 mdecorde
Var CALLBACK
22 2961 mdecorde
Var VIEW
23 2961 mdecorde
Var FUNCTION
24 2961 mdecorde
Var LINEFIND1
25 2961 mdecorde
Var LINEFIND2
26 2961 mdecorde
Var LINEFIND3
27 2961 mdecorde
Var LINEREAD1
28 2961 mdecorde
Var LINEREAD2
29 2961 mdecorde
Var FILEREADFROMEND1
30 2961 mdecorde
Var LINESUM1
31 2961 mdecorde
Var FILEJOIN1
32 2961 mdecorde
Var FILEJOIN2
33 2961 mdecorde
Var FILEJOIN3
34 2961 mdecorde
Var TEXTCOMPARE1
35 2961 mdecorde
Var TEXTCOMPARE2
36 2961 mdecorde
Var TEXTCOMPARE3
37 2961 mdecorde
Var CONFIGREAD1
38 2961 mdecorde
Var CONFIGREAD2
39 2961 mdecorde
Var CONFIGWRITE1
40 2961 mdecorde
Var CONFIGWRITE2
41 2961 mdecorde
Var CONFIGWRITE3
42 2961 mdecorde
Var FILERECODE1
43 2961 mdecorde
Var FILERECODE2
44 2961 mdecorde
45 2961 mdecorde
Page Custom ShowCustom LeaveCustom
46 2961 mdecorde
47 2961 mdecorde
Function ShowCustom
48 2961 mdecorde
	InstallOptions::initDialog "$INI"
49 2961 mdecorde
	Pop $hwnd
50 2961 mdecorde
	GetDlgItem $0 $HWND 1206
51 2961 mdecorde
	ShowWindow $0 0
52 2961 mdecorde
	GetDlgItem $0 $HWND 1208
53 2961 mdecorde
	ShowWindow $0 0
54 2961 mdecorde
	GetDlgItem $0 $HWND 1209
55 2961 mdecorde
	ShowWindow $0 0
56 2961 mdecorde
	StrCpy $FUNCTION LineFind
57 2961 mdecorde
	StrCpy $LINEREAD2 10
58 2961 mdecorde
	StrCpy $TEXTCOMPARE3 FastDiff
59 2961 mdecorde
	StrCpy $CONFIGREAD1 "$WINDIR\system.ini"
60 2961 mdecorde
	StrCpy $CONFIGREAD2 "shell="
61 2961 mdecorde
	StrCpy $FILERECODE2 CharToOem
62 2961 mdecorde
	InstallOptions::show
63 2961 mdecorde
	Pop $0
64 2961 mdecorde
FunctionEnd
65 2961 mdecorde
66 2961 mdecorde
Function LeaveCustom
67 2961 mdecorde
	ReadINIStr $0 $INI "Settings" "State"
68 2961 mdecorde
 	ReadINIStr $R0 $INI "Field 1" "State"
69 2961 mdecorde
	ReadINIStr $R1 $INI "Field 2" "State"
70 2961 mdecorde
 	ReadINIStr $R2 $INI "Field 3" "State"
71 2961 mdecorde
 	ReadINIStr $R3 $INI "Field 4" "State"
72 2961 mdecorde
 	ReadINIStr $R4 $INI "Field 5" "State"
73 2961 mdecorde
 	ReadINIStr $R5 $INI "Field 6" "State"
74 2961 mdecorde
	StrCpy $R4 $R4 8
75 2961 mdecorde
	StrCpy $R5 $R5 8
76 2961 mdecorde
	StrCpy $6 0
77 2961 mdecorde
	StrCpy $7 '$${'
78 2961 mdecorde
	StrCpy $8 'r'
79 2961 mdecorde
	StrCpy $9 'n'
80 2961 mdecorde
81 2961 mdecorde
	StrCmp $0 10 Log
82 2961 mdecorde
	StrCmp $0 9 ViewOrEdit
83 2961 mdecorde
	StrCmp $0 0 Enter
84 2961 mdecorde
	goto MainSend
85 2961 mdecorde
86 2961 mdecorde
	Log:
87 2961 mdecorde
	Exec 'notepad.exe $LOG'
88 2961 mdecorde
	Abort
89 2961 mdecorde
90 2961 mdecorde
	ViewOrEdit:
91 2961 mdecorde
	StrCmp $FUNCTION FileReadFromEnd 0 Edit
92 2961 mdecorde
	StrCmp $VIEW '' 0 ViewFileReadFromEndCallback
93 2961 mdecorde
	GetTempFileName $VIEW $PLUGINSDIR
94 2961 mdecorde
	StrCpy $7 '$$'
95 2961 mdecorde
	FileOpen $0 $VIEW w
96 2961 mdecorde
	FileWrite $0 `Function FileReadFromEndCallback$\r$\n`
97 2961 mdecorde
	FileWrite $0 `	MessageBox MB_OKCANCEL '$7$$9       "Line"=[$$9]$7\$9$7$$8           "#"=[$$8]$7\$9$7$$7          "-#"=[$$7]' IDOK +2$\r$\n`
98 2961 mdecorde
	FileWrite $0 `	StrCpy $$R0 StopFileReadFromEnd$\r$\n$\r$\n`
99 2961 mdecorde
	FileWrite $0 `	Push $$R0$\r$\n`
100 2961 mdecorde
	FileWrite $0 `FunctionEnd$\r$\n`
101 2961 mdecorde
	FileClose $0
102 2961 mdecorde
	StrCpy $7 '$${'
103 2961 mdecorde
	SetFileAttributes $VIEW READONLY
104 2961 mdecorde
	ViewFileReadFromEndCallback:
105 2961 mdecorde
	Exec 'notepad.exe $VIEW'
106 2961 mdecorde
	Abort
107 2961 mdecorde
108 2961 mdecorde
	Edit:
109 2961 mdecorde
	StrCmp $CALLBACK '' +5
110 2961 mdecorde
	StrCmp $6$R6 '0$R0$R4$R5' showproject
111 2961 mdecorde
	StrCmp $R6 '$R0$R4$R5' +3
112 2961 mdecorde
	Delete $CALLBACK
113 2961 mdecorde
	StrCpy $CALLBACK ''
114 2961 mdecorde
	StrCpy $R6 '$R0$R4$R5'
115 2961 mdecorde
116 2961 mdecorde
	#Project#
117 2961 mdecorde
	StrCmp $6$R0 "01. LineFind" 0 +5
118 2961 mdecorde
	IfFileExists $CALLBACK +2
119 2961 mdecorde
	GetTempFileName $CALLBACK $PLUGINSDIR
120 2961 mdecorde
	FileOpen $0 $CALLBACK w
121 2961 mdecorde
	goto function
122 2961 mdecorde
	IfFileExists $PROJECT +2
123 2961 mdecorde
	GetTempFileName $PROJECT $PLUGINSDIR
124 2961 mdecorde
	FileOpen $0 $PROJECT w
125 2961 mdecorde
126 2961 mdecorde
	#Name#
127 2961 mdecorde
	FileWrite $0 'Name "$FUNCTION"$\r$\n'
128 2961 mdecorde
	FileWrite $0 'OutFile "$PROJECT.exe"$\r$\n$\r$\n'
129 2961 mdecorde
130 2961 mdecorde
	#!include#
131 2961 mdecorde
	StrCmp $R0$R4 '1. LineFindExample5' 0 TextFuncInclude
132 2961 mdecorde
	IfFileExists '$EXEDIR\WordFunc.nsh' 0 +3
133 2961 mdecorde
	FileWrite $0 '!include "$EXEDIR\WordFunc.nsh"$\r$\n'
134 2961 mdecorde
	goto +2
135 2961 mdecorde
	FileWrite $0 '!include "WordFunc.nsh"$\r$\n'
136 2961 mdecorde
	FileWrite $0 '!insertmacro WordFind$\r$\n'
137 2961 mdecorde
	FileWrite $0 '!insertmacro WordFindS$\r$\n'
138 2961 mdecorde
	FileWrite $0 '!insertmacro WordFind2X$\r$\n'
139 2961 mdecorde
	FileWrite $0 '!insertmacro WordFind2XS$\r$\n'
140 2961 mdecorde
	FileWrite $0 '!insertmacro WordFind3X$\r$\n'
141 2961 mdecorde
	FileWrite $0 '!insertmacro WordFind3XS$\r$\n'
142 2961 mdecorde
	FileWrite $0 '!insertmacro WordReplace$\r$\n'
143 2961 mdecorde
	FileWrite $0 '!insertmacro WordReplaceS$\r$\n'
144 2961 mdecorde
	FileWrite $0 '!insertmacro WordAdd$\r$\n'
145 2961 mdecorde
	FileWrite $0 '!insertmacro WordAddS$\r$\n'
146 2961 mdecorde
	FileWrite $0 '!insertmacro WordInsert$\r$\n'
147 2961 mdecorde
	FileWrite $0 '!insertmacro WordInsertS$\r$\n'
148 2961 mdecorde
	FileWrite $0 '!insertmacro StrFilter$\r$\n'
149 2961 mdecorde
	FileWrite $0 '!insertmacro StrFilterS$\r$\n'
150 2961 mdecorde
	TextFuncInclude:
151 2961 mdecorde
	IfFileExists '$EXEDIR\TextFunc.nsh' 0 +3
152 2961 mdecorde
	FileWrite $0 '!include "$EXEDIR\TextFunc.nsh"$\r$\n'
153 2961 mdecorde
	goto +2
154 2961 mdecorde
	FileWrite $0 '!include "TextFunc.nsh"$\r$\n'
155 2961 mdecorde
	FileWrite $0 '!insertmacro $FUNCTION$\r$\n'
156 2961 mdecorde
	StrCmp $FUNCTION TextCompare +2
157 2961 mdecorde
	FileWrite $0 '!insertmacro TrimNewLines$\r$\n'
158 2961 mdecorde
159 2961 mdecorde
	#Section#
160 2961 mdecorde
	FileWrite $0 '$\r$\nSection -empty$\r$\n'
161 2961 mdecorde
	FileWrite $0 'SectionEnd$\r$\n$\r$\n'
162 2961 mdecorde
163 2961 mdecorde
	#Function .onInit#
164 2961 mdecorde
	FileWrite $0 'Function .onInit$\r$\n'
165 2961 mdecorde
	StrCmp $R0$R5 "6. TextCompareExample1" 0 TextCompareExample235
166 2961 mdecorde
	FileWrite $0 '	StrCpy $$R0 ""$\r$\n'
167 2961 mdecorde
	FileWrite $0 '	$7TextCompare} "$R1" "$R2" "$R3" "$R5"$\r$\n'
168 2961 mdecorde
	FileWrite $0 '	IfErrors error$\r$\n'
169 2961 mdecorde
	FileWrite $0 '	StrCmp $$R0 NotEqual 0 +2$\r$\n'
170 2961 mdecorde
	FileWrite $0 '	MessageBox MB_OK "             Files differ" IDOK +2$\r$\n'
171 2961 mdecorde
	FileWrite $0 '	MessageBox MB_OK "           Files identical"$\r$\n'
172 2961 mdecorde
	FileWrite $0 '	goto end$\r$\n$\r$\n'
173 2961 mdecorde
	goto endoninit
174 2961 mdecorde
	TextCompareExample235:
175 2961 mdecorde
	StrCmp $R0$R5 "6. TextCompareExample2" +3
176 2961 mdecorde
	StrCmp $R0$R5 "6. TextCompareExample3" +2
177 2961 mdecorde
	StrCmp $R0$R5 "6. TextCompareExample5" 0 TextCompareExample4
178 2961 mdecorde
	FileWrite $0 '	StrCpy $$R0 "$R1"$\r$\n'
179 2961 mdecorde
	FileWrite $0 '	StrCpy $$R1 "$R2"$\r$\n$\r$\n'
180 2961 mdecorde
	FileWrite $0 '	GetTempFileName $$R2$\r$\n'
181 2961 mdecorde
	FileWrite $0 '	FileOpen $$R3 $$R2 w$\r$\n'
182 2961 mdecorde
	FileWrite $0 '	FileWrite $$R3 "$$R0 | $$R1$$\$8$$\$9"$\r$\n'
183 2961 mdecorde
	FileWrite $0 '	$7TextCompare} "$$R0" "$$R1" "$R3" "$R5"$\r$\n'
184 2961 mdecorde
	FileWrite $0 '	IfErrors error$\r$\n'
185 2961 mdecorde
	FileWrite $0 '	Exec "notepad.exe $$R2"$\r$\n'
186 2961 mdecorde
	FileWrite $0 '	goto end$\r$\n$\r$\n'
187 2961 mdecorde
	goto endoninit
188 2961 mdecorde
	TextCompareExample4:
189 2961 mdecorde
	StrCmp $R0$R5 "6. TextCompareExample4" 0 LineFindExample123456
190 2961 mdecorde
	FileWrite $0 '	StrCpy $$R0 "$R1"$\r$\n'
191 2961 mdecorde
	FileWrite $0 '	StrCpy $$R1 "$R2"$\r$\n$\r$\n'
192 2961 mdecorde
	FileWrite $0 '	GetTempFileName $$R2$\r$\n'
193 2961 mdecorde
	FileWrite $0 '	FileOpen $$R3 $$R2 w$\r$\n'
194 2961 mdecorde
	FileWrite $0 '	FileWrite $$R3 "$$R0 | $$R1$$\$8$$\$9"$\r$\n'
195 2961 mdecorde
	FileWrite $0 '	$7TextCompare} "$$R0" "$$R1" "$R3" "$R5"$\r$\n'
196 2961 mdecorde
	FileWrite $0 '	IfErrors error$\r$\n'
197 2961 mdecorde
	FileWrite $0 '	FileWrite $$R3 "$$\$8$$\$9$$R1 | $$R0$$\$8$$\$9"$\r$\n'
198 2961 mdecorde
	FileWrite $0 '	$7TextCompare} "$$R1" "$$R0" "$R3" "$R5"$\r$\n'
199 2961 mdecorde
	FileWrite $0 '	FileClose $$R3$\r$\n'
200 2961 mdecorde
	FileWrite $0 '	IfErrors error$\r$\n'
201 2961 mdecorde
	FileWrite $0 '	Exec "notepad.exe $$R2"$\r$\n$\r$\n'
202 2961 mdecorde
	FileWrite $0 '	goto end$\r$\n$\r$\n'
203 2961 mdecorde
	goto endoninit
204 2961 mdecorde
	LineFindExample123456:
205 2961 mdecorde
	FileWrite $0 '	$7$FUNCTION} "$R1" "$R2" "$R3" "$R4"$\r$\n'
206 2961 mdecorde
	FileWrite $0 '	IfErrors error$\r$\n'
207 2961 mdecorde
	FileWrite $0 '	MessageBox MB_YESNO "          Open output file?" IDNO end$\r$\n'
208 2961 mdecorde
	FileWrite $0 '	StrCmp "$R2" "" 0 +3$\r$\n'
209 2961 mdecorde
	FileWrite $0 `	Exec 'notepad.exe "$R1"'$\r$\n`
210 2961 mdecorde
	FileWrite $0 '	goto end$\r$\n'
211 2961 mdecorde
	FileWrite $0 '	SearchPath $$R2 "$R2"$\r$\n'
212 2961 mdecorde
	FileWrite $0 `	Exec 'notepad.exe "$$R2"'$\r$\n`
213 2961 mdecorde
	FileWrite $0 '	goto end$\r$\n$\r$\n'
214 2961 mdecorde
	endoninit:
215 2961 mdecorde
	FileWrite $0 '	error:$\r$\n'
216 2961 mdecorde
	FileWrite $0 '	MessageBox MB_OK "Error"$\r$\n$\r$\n'
217 2961 mdecorde
	FileWrite $0 '	end:$\r$\n'
218 2961 mdecorde
	FileWrite $0 '	Quit$\r$\n'
219 2961 mdecorde
	FileWrite $0 'FunctionEnd$\r$\n$\r$\n'
220 2961 mdecorde
	#FunctionEnd#
221 2961 mdecorde
222 2961 mdecorde
223 2961 mdecorde
	#Function CallBack#
224 2961 mdecorde
	StrCmp $CALLBACK '' 0 close
225 2961 mdecorde
	function:
226 2961 mdecorde
	StrCmp $R0 '1. LineFind' 0 +8
227 2961 mdecorde
	FileWrite $0 'Function $R4$\r$\n'
228 2961 mdecorde
	StrCmp $R4 "Example1" Example1LF
229 2961 mdecorde
	StrCmp $R4 "Example2" Example2LF
230 2961 mdecorde
	StrCmp $R4 "Example3" Example3LF
231 2961 mdecorde
	StrCmp $R4 "Example4" Example4LF
232 2961 mdecorde
	StrCmp $R4 "Example5" Example5LF
233 2961 mdecorde
	StrCmp $R4 "Example6" Example6LF
234 2961 mdecorde
235 2961 mdecorde
	FileWrite $0 'Function $R5$\r$\n'
236 2961 mdecorde
	StrCmp $R5 "Example1" Example1TC
237 2961 mdecorde
	StrCmp $R5 "Example2" Example2TC
238 2961 mdecorde
	StrCmp $R5 "Example3" Example3TC
239 2961 mdecorde
	StrCmp $R5 "Example4" Example4TC
240 2961 mdecorde
	StrCmp $R5 "Example5" Example3TC
241 2961 mdecorde
242 2961 mdecorde
	Example1LF:
243 2961 mdecorde
	FileWrite $0 "	$7TrimNewLines} '$$R9' $$R9$\r$\n"
244 2961 mdecorde
	FileWrite $0 "	StrCpy $$R9 $$R9 '' 2       ;delete first two symbols$\r$\n"
245 2961 mdecorde
	FileWrite $0 "	StrCpy $$R9 '$$R9$$\$8$$\$9'$\r$\n$\r$\n"
246 2961 mdecorde
	goto endwrite
247 2961 mdecorde
	Example2LF:
248 2961 mdecorde
	FileWrite $0 "	$7TrimNewLines} '$$R9' $$R9$\r$\n"
249 2961 mdecorde
	FileWrite $0 "	StrCpy $$R9 '$$R9   ~Changed line ($$R8)~$$\$8$$\$9'$\r$\n$\r$\n"
250 2961 mdecorde
	goto endwrite
251 2961 mdecorde
	Example3LF:
252 2961 mdecorde
	FileWrite $0 "	StrCpy $$0 SkipWrite$\r$\n$\r$\n"
253 2961 mdecorde
	goto endwrite
254 2961 mdecorde
	Example4LF:
255 2961 mdecorde
	FileWrite $0 "	FileWrite $$R4 '---First Line---$$\$8$$\$9'$\r$\n"
256 2961 mdecorde
	FileWrite $0 "	FileWrite $$R4 '---Second Line ...---$$\$8$$\$9'$\r$\n$\r$\n"
257 2961 mdecorde
	goto endwrite
258 2961 mdecorde
	Example5LF:
259 2961 mdecorde
	FileWrite $0 "	; You can use:$\r$\n"
260 2961 mdecorde
	FileWrite $0 "	; $7WordFind}|$7WordFindS}|$7WordFind2X}|$7WordFind2XS}|$\r$\n"
261 2961 mdecorde
	FileWrite $0 "	; $7WordFind3X}|$7WordFind3XS}|$7WordReplace}|$7WordReplaceS}|$\r$\n"
262 2961 mdecorde
	FileWrite $0 "	; $7WordAdd}|$7WordAddS}|$7WordInsert}|$7WordInsertS}|$\r$\n"
263 2961 mdecorde
	FileWrite $0 "	; $7StrFilter}|$7StrFilterS}$\r$\n$\r$\n"
264 2961 mdecorde
	FileWrite $0 "	$7WordReplace} '$$R9' ' ' '_' '+*' $$R9$\r$\n$\r$\n"
265 2961 mdecorde
	goto endwrite
266 2961 mdecorde
	Example6LF:
267 2961 mdecorde
	FileWrite $0 '	;(Cut lines from a line to another line (also including that line))$\r$\n'
268 2961 mdecorde
	FileWrite $0 '	StrCmp $$R0 finish stop$\r$\n'
269 2961 mdecorde
	FileWrite $0 '	StrCmp $$R0 start finish$\r$\n'
270 2961 mdecorde
	FileWrite $0 '	StrCmp $$R9 "Start Line$$\$8$$\$9" 0 skip$\r$\n'
271 2961 mdecorde
	FileWrite $0 '	StrCpy $$R0 start$\r$\n'
272 2961 mdecorde
	FileWrite $0 '	StrCpy $$R1 $$R9$\r$\n'
273 2961 mdecorde
	FileWrite $0 '	goto code$\r$\n'
274 2961 mdecorde
	FileWrite $0 '	finish:$\r$\n'
275 2961 mdecorde
	FileWrite $0 '	StrCmp $$R9 "Finish Line$$\$8$$\$9" 0 code$\r$\n'
276 2961 mdecorde
	FileWrite $0 '	StrCpy $$R0 finish$\r$\n'
277 2961 mdecorde
	FileWrite $0 '	StrCpy $$R2 $$R8$\r$\n'
278 2961 mdecorde
	FileWrite $0 '	goto code$\r$\n'
279 2961 mdecorde
	FileWrite $0 '	skip:$\r$\n'
280 2961 mdecorde
	FileWrite $0 '	StrCpy $$0 SkipWrite$\r$\n'
281 2961 mdecorde
	FileWrite $0 '	goto output$\r$\n'
282 2961 mdecorde
	FileWrite $0 '	stop:$\r$\n'
283 2961 mdecorde
	FileWrite $0 '	StrCpy $$0 StopLineFind$\r$\n'
284 2961 mdecorde
	FileWrite $0 '	goto output$\r$\n$\r$\n'
285 2961 mdecorde
	FileWrite $0 '	;;(Delete lines from a line to another line (also including that line))$\r$\n'
286 2961 mdecorde
	FileWrite $0 '	; StrCmp $$R0 finish code$\r$\n'
287 2961 mdecorde
	FileWrite $0 '	; StrCmp $$R0 start finish$\r$\n'
288 2961 mdecorde
	FileWrite $0 '	; StrCmp $$R9 "Start Line$$\$8$$\$9" 0 code$\r$\n'
289 2961 mdecorde
	FileWrite $0 '	; StrCpy $$R0 start$\r$\n'
290 2961 mdecorde
	FileWrite $0 '	; StrCpy $$R1 $$R8$\r$\n'
291 2961 mdecorde
	FileWrite $0 '	; goto skip$\r$\n'
292 2961 mdecorde
	FileWrite $0 '	; finish:$\r$\n'
293 2961 mdecorde
	FileWrite $0 '	; StrCmp $$R9 "Finish Line$$\$8$$\$9" 0 skip$\r$\n'
294 2961 mdecorde
	FileWrite $0 '	; StrCpy $$R0 finish$\r$\n'
295 2961 mdecorde
	FileWrite $0 '	; StrCpy $$R2 $$R8$\r$\n'
296 2961 mdecorde
	FileWrite $0 '	; skip:$\r$\n'
297 2961 mdecorde
	FileWrite $0 '	; StrCpy $$0 SkipWrite$\r$\n'
298 2961 mdecorde
	FileWrite $0 '	; goto output$\r$\n$\r$\n'
299 2961 mdecorde
	FileWrite $0 '	code:$\r$\n'
300 2961 mdecorde
	FileWrite $0 '	;...$\r$\n$\r$\n'
301 2961 mdecorde
	FileWrite $0 '	output:$\r$\n'
302 2961 mdecorde
	goto endwrite
303 2961 mdecorde
	Example1TC:
304 2961 mdecorde
	FileWrite $0 "	StrCpy $$R0 NotEqual$\r$\n"
305 2961 mdecorde
	FileWrite $0 "	StrCpy $$0 StopTextCompare$\r$\n$\r$\n"
306 2961 mdecorde
	goto endwrite
307 2961 mdecorde
	Example2TC:
308 2961 mdecorde
	FileWrite $0 "	FileWrite $$R3 '$$8=$$9'$\r$\n"
309 2961 mdecorde
	FileWrite $0 "	FileWrite $$R3 '$$6=$$7$$\$8$$\$9'$\r$\n$\r$\n"
310 2961 mdecorde
	goto endwrite
311 2961 mdecorde
	Example3TC:
312 2961 mdecorde
	FileWrite $0 "	FileWrite $$R3 '$$8|$$6=$$9'$\r$\n$\r$\n"
313 2961 mdecorde
	goto endwrite
314 2961 mdecorde
	Example4TC:
315 2961 mdecorde
	FileWrite $0 "	FileWrite $$R3 '$$8=$$9'$\r$\n$\r$\n"
316 2961 mdecorde
	goto endwrite
317 2961 mdecorde
	endwrite:
318 2961 mdecorde
	FileWrite $0 '	Push $$0$\r$\n'
319 2961 mdecorde
	FileWrite $0 'FunctionEnd$\r$\n'
320 2961 mdecorde
	close:
321 2961 mdecorde
	FileClose $0
322 2961 mdecorde
	goto $6
323 2961 mdecorde
	#FunctionEnd#
324 2961 mdecorde
325 2961 mdecorde
	showproject:
326 2961 mdecorde
	StrCmp $R0 '1. LineFind' 0 +3
327 2961 mdecorde
	ExecWait 'notepad.exe $CALLBACK'
328 2961 mdecorde
	goto +4
329 2961 mdecorde
	SetFileAttributes $PROJECT READONLY
330 2961 mdecorde
	ExecWait 'notepad.exe $PROJECT'
331 2961 mdecorde
	SetFileAttributes $PROJECT NORMAL
332 2961 mdecorde
	Abort
333 2961 mdecorde
334 2961 mdecorde
	MainSend:
335 2961 mdecorde
	GetDlgItem $0 $HWND 1210
336 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
337 2961 mdecorde
	GetDlgItem $0 $HWND 1203
338 2961 mdecorde
	ShowWindow $0 1
339 2961 mdecorde
	EnableWindow $0 1
340 2961 mdecorde
	GetDlgItem $0 $HWND 1204
341 2961 mdecorde
	ShowWindow $0 1
342 2961 mdecorde
	EnableWindow $0 1
343 2961 mdecorde
	GetDlgItem $0 $HWND 1205
344 2961 mdecorde
	EnableWindow $0 1
345 2961 mdecorde
	GetDlgItem $0 $HWND 1206
346 2961 mdecorde
	ShowWindow $0 0
347 2961 mdecorde
	GetDlgItem $0 $HWND 1207
348 2961 mdecorde
	ShowWindow $0 0
349 2961 mdecorde
	GetDlgItem $0 $HWND 1208
350 2961 mdecorde
	ShowWindow $0 0
351 2961 mdecorde
	GetDlgItem $0 $HWND 1209
352 2961 mdecorde
	ShowWindow $0 0
353 2961 mdecorde
	GetDlgItem $0 $HWND 1211
354 2961 mdecorde
	EnableWindow $0 1
355 2961 mdecorde
356 2961 mdecorde
	StrCmp $FUNCTION LineFind 0 +5
357 2961 mdecorde
	StrCpy $LINEFIND1 $R1
358 2961 mdecorde
	StrCpy $LINEFIND2 $R2
359 2961 mdecorde
	StrCpy $LINEFIND3 $R3
360 2961 mdecorde
	goto LineFindSend
361 2961 mdecorde
	StrCmp $FUNCTION LineRead 0 +4
362 2961 mdecorde
	StrCpy $LINEREAD1 $R1
363 2961 mdecorde
	StrCpy $LINEREAD2 $R2
364 2961 mdecorde
	goto LineFindSend
365 2961 mdecorde
	StrCmp $FUNCTION FileReadFromEnd 0 +3
366 2961 mdecorde
	StrCpy $FILEREADFROMEND1 $R1
367 2961 mdecorde
	goto LineFindSend
368 2961 mdecorde
	StrCmp $FUNCTION LineSum 0 +3
369 2961 mdecorde
	StrCpy $LINESUM1 $R1
370 2961 mdecorde
	goto LineFindSend
371 2961 mdecorde
	StrCmp $FUNCTION FileJoin 0 +5
372 2961 mdecorde
	StrCpy $FILEJOIN1 $R1
373 2961 mdecorde
	StrCpy $FILEJOIN2 $R2
374 2961 mdecorde
	StrCpy $FILEJOIN3 $R3
375 2961 mdecorde
	goto LineFindSend
376 2961 mdecorde
	StrCmp $FUNCTION TextCompare 0 +5
377 2961 mdecorde
	StrCpy $TEXTCOMPARE1 $R1
378 2961 mdecorde
	StrCpy $TEXTCOMPARE2 $R2
379 2961 mdecorde
	StrCpy $TEXTCOMPARE3 $R3
380 2961 mdecorde
	goto LineFindSend
381 2961 mdecorde
	StrCmp $FUNCTION ConfigRead 0 +4
382 2961 mdecorde
	StrCpy $CONFIGREAD1 $R1
383 2961 mdecorde
	StrCpy $CONFIGREAD2 $R2
384 2961 mdecorde
	goto LineFindSend
385 2961 mdecorde
	StrCmp $FUNCTION ConfigWrite 0 +5
386 2961 mdecorde
	StrCpy $CONFIGWRITE1 $R1
387 2961 mdecorde
	StrCpy $CONFIGWRITE2 $R2
388 2961 mdecorde
	StrCpy $CONFIGWRITE3 $R3
389 2961 mdecorde
	goto LineFindSend
390 2961 mdecorde
	StrCmp $FUNCTION FileRecode 0 +3
391 2961 mdecorde
	StrCpy $FILERECODE1 $R1
392 2961 mdecorde
	StrCpy $FILERECODE2 $R2
393 2961 mdecorde
394 2961 mdecorde
	LineFindSend:
395 2961 mdecorde
	StrCmp $R0 "1. LineFind" 0 LineReadSend
396 2961 mdecorde
	StrCmp $FUNCTION LineFind 0 LineFindSend2
397 2961 mdecorde
	StrCmp $R4 "Example1" 0 +3
398 2961 mdecorde
	StrCpy $LINEFIND3 "3:-1"
399 2961 mdecorde
	goto LineFindSend2
400 2961 mdecorde
	StrCmp $R4 "Example2" 0 +3
401 2961 mdecorde
	StrCpy $LINEFIND3 "{5:12 15 -6:-5 -1}"
402 2961 mdecorde
	goto LineFindSend2
403 2961 mdecorde
	StrCmp $R4 "Example3" 0 +3
404 2961 mdecorde
	StrCpy $LINEFIND3 "2:3 10:-5 -3:-2"
405 2961 mdecorde
	goto LineFindSend2
406 2961 mdecorde
	StrCmp $R4 "Example4" 0 +3
407 2961 mdecorde
	StrCpy $LINEFIND3 "10"
408 2961 mdecorde
	goto LineFindSend2
409 2961 mdecorde
	StrCmp $R4 "Example5" 0 +3
410 2961 mdecorde
	StrCpy $LINEFIND3 "1:-1"
411 2961 mdecorde
	goto LineFindSend2
412 2961 mdecorde
	StrCmp $R4 "Example6" 0 +3
413 2961 mdecorde
	StrCpy $LINEFIND3 ""
414 2961 mdecorde
	goto LineFindSend2
415 2961 mdecorde
	StrCmp $R4 "Example7" 0 +2
416 2961 mdecorde
	StrCpy $LINEFIND3 "1:-1"
417 2961 mdecorde
418 2961 mdecorde
	LineFindSend2:
419 2961 mdecorde
	StrCpy $FUNCTION LineFind
420 2961 mdecorde
	StrCmp $LINEFIND2 '/NUL' 0 +2
421 2961 mdecorde
	StrCpy $LINEFIND2 ''
422 2961 mdecorde
	GetDlgItem $0 $HWND 1201
423 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$LINEFIND1"
424 2961 mdecorde
	GetDlgItem $0 $HWND 1203
425 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$LINEFIND2"
426 2961 mdecorde
	GetDlgItem $0 $HWND 1205
427 2961 mdecorde
	ShowWindow $0 1
428 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$LINEFIND3"
429 2961 mdecorde
	GetDlgItem $0 $HWND 1207
430 2961 mdecorde
	ShowWindow $0 1
431 2961 mdecorde
	GetDlgItem $0 $HWND 1211
432 2961 mdecorde
	ShowWindow $0 1
433 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:Edit"
434 2961 mdecorde
	GetDlgItem $0 $HWND 1212
435 2961 mdecorde
	ShowWindow $0 1
436 2961 mdecorde
	StrCmp $LOG '' +2
437 2961 mdecorde
	EnableWindow $0 1
438 2961 mdecorde
	GetDlgItem $0 $HWND 1213
439 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:InputFile"
440 2961 mdecorde
	GetDlgItem $0 $HWND 1214
441 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:OutputFile"
442 2961 mdecorde
	GetDlgItem $0 $HWND 1215
443 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:Range"
444 2961 mdecorde
	GetDlgItem $0 $HWND 1216
445 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:Function"
446 2961 mdecorde
447 2961 mdecorde
	StrCmp $R4 "Example7" 0 +9
448 2961 mdecorde
	GetDlgItem $0 $HWND 1203
449 2961 mdecorde
	EnableWindow $0 0
450 2961 mdecorde
	SendMessage $0 ${WM_ENABLE} 1 0
451 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:/NUL"
452 2961 mdecorde
	GetDlgItem $0 $HWND 1204
453 2961 mdecorde
	EnableWindow $0 0
454 2961 mdecorde
	GetDlgItem $0 $HWND 1211
455 2961 mdecorde
	EnableWindow $0 0
456 2961 mdecorde
	abort
457 2961 mdecorde
458 2961 mdecorde
459 2961 mdecorde
	LineReadSend:
460 2961 mdecorde
	StrCmp $R0 "2. LineRead" 0 FileReadFromEndSend
461 2961 mdecorde
	StrCpy $FUNCTION LineRead
462 2961 mdecorde
	GetDlgItem $0 $HWND 1201
463 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$LINEREAD1"
464 2961 mdecorde
	GetDlgItem $0 $HWND 1203
465 2961 mdecorde
	ShowWindow $0 1
466 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$LINEREAD2"
467 2961 mdecorde
	GetDlgItem $0 $HWND 1204
468 2961 mdecorde
	ShowWindow $0 0
469 2961 mdecorde
	GetDlgItem $0 $HWND 1205
470 2961 mdecorde
	ShowWindow $0 0
471 2961 mdecorde
	GetDlgItem $0 $HWND 1211
472 2961 mdecorde
	ShowWindow $0 0
473 2961 mdecorde
	GetDlgItem $0 $HWND 1212
474 2961 mdecorde
	ShowWindow $0 0
475 2961 mdecorde
	GetDlgItem $0 $HWND 1213
476 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:InputFile"
477 2961 mdecorde
	GetDlgItem $0 $HWND 1214
478 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:Line #"
479 2961 mdecorde
	GetDlgItem $0 $HWND 1215
480 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
481 2961 mdecorde
	GetDlgItem $0 $HWND 1216
482 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
483 2961 mdecorde
	Abort
484 2961 mdecorde
485 2961 mdecorde
	FileReadFromEndSend:
486 2961 mdecorde
	StrCmp $R0 "3. FileReadFromEnd" 0 LineSumSend
487 2961 mdecorde
	StrCpy $FUNCTION FileReadFromEnd
488 2961 mdecorde
	GetDlgItem $0 $HWND 1201
489 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$FILEREADFROMEND1"
490 2961 mdecorde
	GetDlgItem $0 $HWND 1203
491 2961 mdecorde
	ShowWindow $0 0
492 2961 mdecorde
	GetDlgItem $0 $HWND 1204
493 2961 mdecorde
	ShowWindow $0 0
494 2961 mdecorde
	GetDlgItem $0 $HWND 1205
495 2961 mdecorde
	ShowWindow $0 0
496 2961 mdecorde
	GetDlgItem $0 $HWND 1209
497 2961 mdecorde
	ShowWindow $0 1
498 2961 mdecorde
	GetDlgItem $0 $HWND 1211
499 2961 mdecorde
	ShowWindow $0 1
500 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:View"
501 2961 mdecorde
	GetDlgItem $0 $HWND 1212
502 2961 mdecorde
	ShowWindow $0 0
503 2961 mdecorde
	GetDlgItem $0 $HWND 1213
504 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:InputFile"
505 2961 mdecorde
	GetDlgItem $0 $HWND 1214
506 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
507 2961 mdecorde
	GetDlgItem $0 $HWND 1215
508 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
509 2961 mdecorde
	GetDlgItem $0 $HWND 1216
510 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:Function"
511 2961 mdecorde
	Abort
512 2961 mdecorde
513 2961 mdecorde
	LineSumSend:
514 2961 mdecorde
	StrCmp $R0 "4. LineSum" 0 FileJoinSend
515 2961 mdecorde
	StrCpy $FUNCTION LineSum
516 2961 mdecorde
	GetDlgItem $0 $HWND 1201
517 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$LINESUM1"
518 2961 mdecorde
	GetDlgItem $0 $HWND 1203
519 2961 mdecorde
	ShowWindow $0 0
520 2961 mdecorde
	GetDlgItem $0 $HWND 1204
521 2961 mdecorde
	ShowWindow $0 0
522 2961 mdecorde
	GetDlgItem $0 $HWND 1205
523 2961 mdecorde
	ShowWindow $0 0
524 2961 mdecorde
	GetDlgItem $0 $HWND 1211
525 2961 mdecorde
	ShowWindow $0 0
526 2961 mdecorde
	GetDlgItem $0 $HWND 1212
527 2961 mdecorde
	ShowWindow $0 0
528 2961 mdecorde
	GetDlgItem $0 $HWND 1213
529 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:InputFile"
530 2961 mdecorde
	GetDlgItem $0 $HWND 1214
531 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
532 2961 mdecorde
	GetDlgItem $0 $HWND 1215
533 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
534 2961 mdecorde
	GetDlgItem $0 $HWND 1216
535 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
536 2961 mdecorde
	Abort
537 2961 mdecorde
538 2961 mdecorde
	FileJoinSend:
539 2961 mdecorde
	StrCmp $R0 "5. FileJoin" 0 TextCompareSend
540 2961 mdecorde
	StrCpy $FUNCTION FileJoin
541 2961 mdecorde
	GetDlgItem $0 $HWND 1201
542 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$FILEJOIN1"
543 2961 mdecorde
	GetDlgItem $0 $HWND 1203
544 2961 mdecorde
	ShowWindow $0 1
545 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$FILEJOIN2"
546 2961 mdecorde
	GetDlgItem $0 $HWND 1204
547 2961 mdecorde
	ShowWindow $0 1
548 2961 mdecorde
	GetDlgItem $0 $HWND 1205
549 2961 mdecorde
	ShowWindow $0 1
550 2961 mdecorde
	EnableWindow $0 1
551 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$FILEJOIN3"
552 2961 mdecorde
	GetDlgItem $0 $HWND 1206
553 2961 mdecorde
	ShowWindow $0 1
554 2961 mdecorde
	GetDlgItem $0 $HWND 1211
555 2961 mdecorde
	ShowWindow $0 0
556 2961 mdecorde
	GetDlgItem $0 $HWND 1212
557 2961 mdecorde
	ShowWindow $0 0
558 2961 mdecorde
	GetDlgItem $0 $HWND 1213
559 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:InputFile1"
560 2961 mdecorde
	GetDlgItem $0 $HWND 1214
561 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:InputFile2"
562 2961 mdecorde
	GetDlgItem $0 $HWND 1215
563 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:OutputFile"
564 2961 mdecorde
	GetDlgItem $0 $HWND 1216
565 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
566 2961 mdecorde
	Abort
567 2961 mdecorde
568 2961 mdecorde
	TextCompareSend:
569 2961 mdecorde
	StrCmp $R0 "6. TextCompare" 0 ConfigReadSend
570 2961 mdecorde
	StrCmp $FUNCTION TextCompare 0 TextCompareSend2
571 2961 mdecorde
	StrCmp $R5 "Example1" 0 +3
572 2961 mdecorde
	StrCpy $TEXTCOMPARE3 "FastDiff"
573 2961 mdecorde
	goto TextCompareSend2
574 2961 mdecorde
	StrCmp $R5 "Example2" 0 +3
575 2961 mdecorde
	StrCpy $TEXTCOMPARE3 "FastDiff"
576 2961 mdecorde
	goto TextCompareSend2
577 2961 mdecorde
	StrCmp $R5 "Example3" 0 +3
578 2961 mdecorde
	StrCpy $TEXTCOMPARE3 "FastEqual"
579 2961 mdecorde
	goto TextCompareSend2
580 2961 mdecorde
	StrCmp $R5 "Example4" 0 +3
581 2961 mdecorde
	StrCpy $TEXTCOMPARE3 "SlowDiff"
582 2961 mdecorde
	goto TextCompareSend2
583 2961 mdecorde
	StrCmp $R5 "Example5" 0 +2
584 2961 mdecorde
	StrCpy $TEXTCOMPARE3 "SlowEqual"
585 2961 mdecorde
586 2961 mdecorde
	TextCompareSend2:
587 2961 mdecorde
	StrCpy $FUNCTION TextCompare
588 2961 mdecorde
	GetDlgItem $0 $HWND 1201
589 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$TEXTCOMPARE1"
590 2961 mdecorde
	GetDlgItem $0 $HWND 1203
591 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$TEXTCOMPARE2"
592 2961 mdecorde
	GetDlgItem $0 $HWND 1204
593 2961 mdecorde
	ShowWindow $0 1
594 2961 mdecorde
	GetDlgItem $0 $HWND 1205
595 2961 mdecorde
	ShowWindow $0 1
596 2961 mdecorde
	EnableWindow $0 0
597 2961 mdecorde
	SendMessage $0 ${WM_ENABLE} 1 0
598 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$TEXTCOMPARE3"
599 2961 mdecorde
	GetDlgItem $0 $HWND 1208
600 2961 mdecorde
	ShowWindow $0 1
601 2961 mdecorde
	GetDlgItem $0 $HWND 1211
602 2961 mdecorde
	ShowWindow $0 1
603 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:View"
604 2961 mdecorde
	GetDlgItem $0 $HWND 1212
605 2961 mdecorde
	ShowWindow $0 1
606 2961 mdecorde
	GetDlgItem $0 $HWND 1213
607 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:TextFile1"
608 2961 mdecorde
	GetDlgItem $0 $HWND 1214
609 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:TextFile2"
610 2961 mdecorde
	GetDlgItem $0 $HWND 1215
611 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:Option"
612 2961 mdecorde
	GetDlgItem $0 $HWND 1216
613 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:Function"
614 2961 mdecorde
	abort
615 2961 mdecorde
616 2961 mdecorde
	ConfigReadSend:
617 2961 mdecorde
	StrCmp $R0 "7. ConfigRead" 0 ConfigWriteSend
618 2961 mdecorde
	StrCpy $FUNCTION ConfigRead
619 2961 mdecorde
	GetDlgItem $0 $HWND 1201
620 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$CONFIGREAD1"
621 2961 mdecorde
	GetDlgItem $0 $HWND 1203
622 2961 mdecorde
	ShowWindow $0 1
623 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$CONFIGREAD2"
624 2961 mdecorde
	GetDlgItem $0 $HWND 1204
625 2961 mdecorde
	ShowWindow $0 0
626 2961 mdecorde
	GetDlgItem $0 $HWND 1205
627 2961 mdecorde
	ShowWindow $0 0
628 2961 mdecorde
	GetDlgItem $0 $HWND 1211
629 2961 mdecorde
	ShowWindow $0 0
630 2961 mdecorde
	GetDlgItem $0 $HWND 1212
631 2961 mdecorde
	ShowWindow $0 0
632 2961 mdecorde
	GetDlgItem $0 $HWND 1213
633 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:InputFile"
634 2961 mdecorde
	GetDlgItem $0 $HWND 1214
635 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:Entry"
636 2961 mdecorde
	GetDlgItem $0 $HWND 1215
637 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
638 2961 mdecorde
	GetDlgItem $0 $HWND 1216
639 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
640 2961 mdecorde
	Abort
641 2961 mdecorde
642 2961 mdecorde
	ConfigWriteSend:
643 2961 mdecorde
	StrCmp $R0 "8. ConfigWrite" 0 FileRecodeSend
644 2961 mdecorde
	StrCpy $FUNCTION ConfigWrite
645 2961 mdecorde
	GetDlgItem $0 $HWND 1201
646 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$CONFIGWRITE1"
647 2961 mdecorde
	GetDlgItem $0 $HWND 1203
648 2961 mdecorde
	ShowWindow $0 1
649 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$CONFIGWRITE2"
650 2961 mdecorde
	GetDlgItem $0 $HWND 1204
651 2961 mdecorde
	ShowWindow $0 0
652 2961 mdecorde
	GetDlgItem $0 $HWND 1205
653 2961 mdecorde
	ShowWindow $0 1
654 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$CONFIGWRITE3"
655 2961 mdecorde
	GetDlgItem $0 $HWND 1211
656 2961 mdecorde
	ShowWindow $0 0
657 2961 mdecorde
	GetDlgItem $0 $HWND 1212
658 2961 mdecorde
	ShowWindow $0 0
659 2961 mdecorde
	GetDlgItem $0 $HWND 1213
660 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:InputFile"
661 2961 mdecorde
	GetDlgItem $0 $HWND 1214
662 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:Entry"
663 2961 mdecorde
	GetDlgItem $0 $HWND 1215
664 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:Value"
665 2961 mdecorde
	GetDlgItem $0 $HWND 1216
666 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
667 2961 mdecorde
	Abort
668 2961 mdecorde
669 2961 mdecorde
	FileRecodeSend:
670 2961 mdecorde
	StrCmp $R0 "9. FileRecode" 0 Abort
671 2961 mdecorde
	StrCpy $FUNCTION FileRecode
672 2961 mdecorde
	GetDlgItem $0 $HWND 1201
673 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$FILERECODE1"
674 2961 mdecorde
	GetDlgItem $0 $HWND 1203
675 2961 mdecorde
	ShowWindow $0 1
676 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:$FILERECODE2"
677 2961 mdecorde
	GetDlgItem $0 $HWND 1204
678 2961 mdecorde
	ShowWindow $0 0
679 2961 mdecorde
	GetDlgItem $0 $HWND 1205
680 2961 mdecorde
	ShowWindow $0 0
681 2961 mdecorde
	GetDlgItem $0 $HWND 1211
682 2961 mdecorde
	ShowWindow $0 0
683 2961 mdecorde
	GetDlgItem $0 $HWND 1212
684 2961 mdecorde
	ShowWindow $0 0
685 2961 mdecorde
	GetDlgItem $0 $HWND 1213
686 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:InputFile"
687 2961 mdecorde
	GetDlgItem $0 $HWND 1214
688 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:Format"
689 2961 mdecorde
	GetDlgItem $0 $HWND 1215
690 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
691 2961 mdecorde
	GetDlgItem $0 $HWND 1216
692 2961 mdecorde
	SendMessage $0 ${WM_SETTEXT} 1 "STR:"
693 2961 mdecorde
	Abort
694 2961 mdecorde
695 2961 mdecorde
;=Enter=
696 2961 mdecorde
	Enter:
697 2961 mdecorde
	StrCmp $R1 '' 0 +3
698 2961 mdecorde
	StrCpy $0 'Choose InputFile'
699 2961 mdecorde
	goto send
700 2961 mdecorde
	IfFileExists $R1 +3
701 2961 mdecorde
	StrCpy $0 'InputFile is not exist'
702 2961 mdecorde
	goto send
703 2961 mdecorde
704 2961 mdecorde
	StrCmp $R0 "1. LineFind" LineFindRead
705 2961 mdecorde
	StrCmp $R0 "2. LineRead" LineRead
706 2961 mdecorde
	StrCmp $R0 "3. FileReadFromEnd" FileReadFromEnd
707 2961 mdecorde
	StrCmp $R0 "4. LineSum" LineSum
708 2961 mdecorde
	StrCmp $R0 "5. FileJoin" FileJoin
709 2961 mdecorde
	StrCmp $R0 "6. TextCompare" LineFind-TextCompare
710 2961 mdecorde
	StrCmp $R0 "7. ConfigRead" ConfigRead
711 2961 mdecorde
	StrCmp $R0 "8. ConfigWrite" ConfigWrite
712 2961 mdecorde
	StrCmp $R0 "9. FileRecode" FileRecode
713 2961 mdecorde
	Abort
714 2961 mdecorde
715 2961 mdecorde
	LineFindRead:
716 2961 mdecorde
	StrCmp $R4 "Example7" 0 LineFind-TextCompare
717 2961 mdecorde
	${LineFind} '$R1' '/NUL' '$R3' LineFindCallback
718 2961 mdecorde
	IfErrors error
719 2961 mdecorde
	StrCmp $R0 StopLineFind 0 done
720 2961 mdecorde
	StrCpy $0 'stopped'
721 2961 mdecorde
	goto send
722 2961 mdecorde
723 2961 mdecorde
	LineFind-TextCompare:
724 2961 mdecorde
	GetLabelAddress $6 LineFindBack
725 2961 mdecorde
	goto Edit
726 2961 mdecorde
	LineFindBack:
727 2961 mdecorde
	FileClose $0
728 2961 mdecorde
	StrCmp $R0 "6. TextCompare" Compile
729 2961 mdecorde
	StrCmp $CALLBACK '' Compile
730 2961 mdecorde
	${FileJoin} "$PROJECT" "$CALLBACK" ""
731 2961 mdecorde
732 2961 mdecorde
	Compile:
733 2961 mdecorde
	StrCmp $LOG '' 0 +4
734 2961 mdecorde
	GetTempFileName $LOG $PLUGINSDIR
735 2961 mdecorde
	GetDlgItem $0 $HWND 1212
736 2961 mdecorde
	EnableWindow $0 1
737 2961 mdecorde
	ReadRegStr $0 HKLM "SOFTWARE\NSIS" ""
738 2961 mdecorde
	IfErrors 0 +2
739 2961 mdecorde
	StrCpy $0 "${NSISDIR}"
740 2961 mdecorde
	nsExec::Exec '"$0\makensis.exe" /O$LOG $PROJECT'
741 2961 mdecorde
	Pop $0
742 2961 mdecorde
	StrCmp $0 0 0 +6
743 2961 mdecorde
	ExecWait '$PROJECT.exe' $0
744 2961 mdecorde
	Delete $PROJECT
745 2961 mdecorde
	Delete $PROJECT.exe
746 2961 mdecorde
	StrCpy $PROJECT ''
747 2961 mdecorde
	goto done
748 2961 mdecorde
	MessageBox MB_YESNO|MB_ICONEXCLAMATION "Compile error. Open log?" IDNO +2
749 2961 mdecorde
	Exec 'notepad.exe $LOG'
750 2961 mdecorde
	StrCpy $0 "Compile Error"
751 2961 mdecorde
	goto send
752 2961 mdecorde
753 2961 mdecorde
	LineRead:
754 2961 mdecorde
	${LineRead} "$R1" "$R2" $0
755 2961 mdecorde
	IfErrors error send
756 2961 mdecorde
757 2961 mdecorde
	FileReadFromEnd:
758 2961 mdecorde
	${FileReadFromEnd} "$R1" "FileReadFromEndCallback"
759 2961 mdecorde
	IfErrors error
760 2961 mdecorde
	StrCmp $R0 StopFileReadFromEnd 0 done
761 2961 mdecorde
	StrCpy $0 'stopped'
762 2961 mdecorde
	goto send
763 2961 mdecorde
764 2961 mdecorde
	LineSum:
765 2961 mdecorde
	${LineSum} "$R1" $0
766 2961 mdecorde
	IfErrors error send
767 2961 mdecorde
768 2961 mdecorde
	FileJoin:
769 2961 mdecorde
	${FileJoin} "$R1" "$R2" "$R3"
770 2961 mdecorde
	IfErrors error
771 2961 mdecorde
	MessageBox MB_YESNO "          Open output file?" IDNO done
772 2961 mdecorde
	StrCmp $R3 '' 0 +3
773 2961 mdecorde
	Exec '"notepad.exe" "$R1"'
774 2961 mdecorde
	goto done
775 2961 mdecorde
	Exec '"notepad.exe" "$R3"'
776 2961 mdecorde
	goto done
777 2961 mdecorde
778 2961 mdecorde
	ConfigRead:
779 2961 mdecorde
	${ConfigRead} "$R1" "$R2" $0
780 2961 mdecorde
	IfErrors error send
781 2961 mdecorde
782 2961 mdecorde
	ConfigWrite:
783 2961 mdecorde
	${ConfigWrite} "$R1" "$R2" "$R3" $0
784 2961 mdecorde
	IfErrors error
785 2961 mdecorde
	MessageBox MB_YESNO "          Open output file?" IDNO send
786 2961 mdecorde
	Exec '"notepad.exe" "$R1"'
787 2961 mdecorde
	goto send
788 2961 mdecorde
789 2961 mdecorde
	FileRecode:
790 2961 mdecorde
	${FileRecode} "$R1" "$R2"
791 2961 mdecorde
	IfErrors error
792 2961 mdecorde
	MessageBox MB_YESNO "          Open output file?" IDNO done
793 2961 mdecorde
	Exec '"notepad.exe" "$R1"'
794 2961 mdecorde
	goto done
795 2961 mdecorde
796 2961 mdecorde
	error:
797 2961 mdecorde
	StrCpy $0 'error'
798 2961 mdecorde
	goto send
799 2961 mdecorde
800 2961 mdecorde
	done:
801 2961 mdecorde
	StrCpy $0 'Done'
802 2961 mdecorde
803 2961 mdecorde
	send:
804 2961 mdecorde
	GetDlgItem $1 $HWND 1210
805 2961 mdecorde
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$0"
806 2961 mdecorde
807 2961 mdecorde
	abort:
808 2961 mdecorde
	Abort
809 2961 mdecorde
FunctionEnd
810 2961 mdecorde
811 2961 mdecorde
Function LineFindCallback
812 2961 mdecorde
	MessageBox MB_OKCANCEL '$$R9       "Line"=[$R9]$\n$$R8           "#"=[$R8]$\n$$R7          "-#"=[$R7]$\n$$R6   "Range"=[$R6]$\n$$R5     "Read"=[$R5]$\n$$R4     "Write"=[$R4]' IDOK +2
813 2961 mdecorde
	StrCpy $R0 StopLineFind
814 2961 mdecorde
815 2961 mdecorde
	Push $R0
816 2961 mdecorde
FunctionEnd
817 2961 mdecorde
818 2961 mdecorde
Function FileReadFromEndCallback
819 2961 mdecorde
	MessageBox MB_OKCANCEL '$$9       "Line"=[$9]$\n$$8           "#"=[$8]$\n$$7          "-#"=[$7]' IDOK +2
820 2961 mdecorde
	StrCpy $R0 StopFileReadFromEnd
821 2961 mdecorde
822 2961 mdecorde
	Push $R0
823 2961 mdecorde
FunctionEnd
824 2961 mdecorde
825 2961 mdecorde
Function .onInit
826 2961 mdecorde
	InitPluginsDir
827 2961 mdecorde
	GetTempFileName $INI $PLUGINSDIR
828 2961 mdecorde
	File /oname=$INI "TextFunc.ini"
829 2961 mdecorde
FunctionEnd
830 2961 mdecorde
831 2961 mdecorde
Page instfiles
832 2961 mdecorde
833 2961 mdecorde
Section -Empty
834 2961 mdecorde
SectionEnd