Updates by Instructor

1. "WordReplace"
   -Added options "{", "}", "{*", "}*"

2. "GetOptions"
   -Now sets error flag if option does not found

3. "ConfigRead"
   -Now sets error flag if entry does not found

4. New case sensitive functions:
      "WordFindS", "WordFind2XS", "WordFind3XS", "WordReplaceS",
      "WordAddS", "WordInsertS", "StrFilterS", "TextCompareS",
      "ConfigReadS", "ConfigWriteS", "GetOptionsS"


git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4517 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2006-02-10 10:46:57 +00:00
parent 082160fb3e
commit aa43f0c349
9 changed files with 1534 additions and 572 deletions

View file

@ -3,7 +3,7 @@
; File Functions
;_____________________________________________________________________________
;
; 2005 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
; 2006 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
Name "File Functions"
OutFile "FileFunc.exe"
@ -670,6 +670,7 @@ Function LeaveCustom
GetOptions:
${GetOptions} "$R1" "$R3" $0
IfErrors error
StrCpy $R0 '$0'
goto send

View file

@ -3,7 +3,7 @@
; File Functions Test
;_____________________________________________________________________________
;
; 2005 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
; 2006 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
Name "File Functions Test"
OutFile "FileFuncTest.exe"
@ -33,6 +33,7 @@ Var OUT7
!insertmacro GetExePath
!insertmacro GetParameters
!insertmacro GetOptions
!insertmacro GetOptionsS
!insertmacro GetRoot
!insertmacro GetParent
!insertmacro GetFileName
@ -53,6 +54,7 @@ Var OUT7
!insertmacro un.GetExePath
!insertmacro un.GetParameters
!insertmacro un.GetOptions
!insertmacro un.GetOptionsS
!insertmacro un.GetRoot
!insertmacro un.GetParent
!insertmacro un.GetFileName
@ -281,9 +283,38 @@ Section GetOptions
StrCmp $OUT1 '"C:/Program Files/Common Files"' 0 error
${GetOptions} `/INSTDIR='"C:/Program Files/Common Files"' /SILENT=yes` '/INSTDIR*=' $OUT1
IfErrors 0 error
StrCmp $OUT1 '' 0 error
${GetOptions} `/INSTDIR="C:/Program Files/Common Files" /SILENT=yes` '' $OUT1
IfErrors 0 error
StrCmp $OUT1 '' 0 error
${GetOptionsS} '/INSTDIR=C:\Program Files\Common Files /SILENT' '/SILENT' $OUT1
IfErrors error
StrCmp $OUT1 '' 0 error
goto +2
error:
SetErrors
${StackVerificationEnd}
SectionEnd
Section GetOptionsS
${StackVerificationStart} GetOptionsS
${GetOptionsS} '/INSTDIR=C:\Program Files\Common Files /SILENT=yes' '/INSTDIR=' $OUT1
IfErrors error
StrCmp $OUT1 'C:\Program Files\Common Files' 0 error
${GetOptionsS} '/INSTDIR=C:\Program Files\Common Files /SILENT=yes' '/Instdir=' $OUT1
IfErrors 0 error
StrCmp $OUT1 '' 0 error
${GetOptionsS} '/INSTDIR=C:\Program Files\Common Files /SILENT' '/SILENT' $OUT1
IfErrors error
StrCmp $OUT1 '' 0 error
goto +2
@ -510,6 +541,7 @@ Section un.Uninstall
${un.GetExePath} $OUT1
${un.GetParameters} $OUT1
${un.GetOptions} '/INSTDIR=C:\Program Files\Common Files /SILENT=yes' '/INSTDIR=' $OUT1
${un.GetOptionsS} '/INSTDIR=C:\Program Files\Common Files /SILENT=yes' '/INSTDIR=' $OUT1
${un.GetRoot} 'C:\Program Files\NSIS' $OUT1
${un.GetParent} 'C:\Program Files\Winamp\uninstwa.exe' $OUT1
${un.GetFileName} 'C:\Program Files\Winamp\uninstwa.exe' $OUT1

View file

@ -3,7 +3,7 @@
; Text Functions
;_____________________________________________________________________________
;
; 2005 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
; 2006 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
Name "Text Functions"
OutFile "TextFunc.exe"
@ -142,12 +142,19 @@ Function LeaveCustom
goto +2
FileWrite $0 '!include "WordFunc.nsh"$\r$\n'
FileWrite $0 '!insertmacro WordFind$\r$\n'
FileWrite $0 '!insertmacro WordFindS$\r$\n'
FileWrite $0 '!insertmacro WordFind2X$\r$\n'
FileWrite $0 '!insertmacro WordFind2XS$\r$\n'
FileWrite $0 '!insertmacro WordFind3X$\r$\n'
FileWrite $0 '!insertmacro WordFind3XS$\r$\n'
FileWrite $0 '!insertmacro WordReplace$\r$\n'
FileWrite $0 '!insertmacro WordReplaceS$\r$\n'
FileWrite $0 '!insertmacro WordAdd$\r$\n'
FileWrite $0 '!insertmacro WordAddS$\r$\n'
FileWrite $0 '!insertmacro WordInsert$\r$\n'
FileWrite $0 '!insertmacro WordInsertS$\r$\n'
FileWrite $0 '!insertmacro StrFilter$\r$\n'
FileWrite $0 '!insertmacro StrFilterS$\r$\n'
TextFuncInclude:
IfFileExists '$EXEDIR\TextFunc.nsh' 0 +3
FileWrite $0 '!include "$EXEDIR\TextFunc.nsh"$\r$\n'
@ -257,9 +264,11 @@ Function LeaveCustom
FileWrite $0 " FileWrite $$R4 '---Second Line ...---$$\$8$$\$9'$\r$\n$\r$\n"
goto endwrite
Example5LF:
FileWrite $0 " ; Use any of WordFunctions:$\r$\n"
FileWrite $0 " ; $7WordFind}|$7WordFind2X}|$7WordFind3X}|$\r$\n"
FileWrite $0 " ; $7WordReplace}|$7WordAdd}|$7WordInsert}|$7StrFilter}$\r$\n$\r$\n"
FileWrite $0 " ; You can use:$\r$\n"
FileWrite $0 " ; $7WordFind}|$7WordFindS}|$7WordFind2X}|$7WordFind2XS}|$\r$\n"
FileWrite $0 " ; $7WordFind3X}|$7WordFind3XS}|$7WordReplace}|$7WordReplaceS}|$\r$\n"
FileWrite $0 " ; $7WordAdd}|$7WordAddS}|$7WordInsert}|$7WordInsertS}|$\r$\n"
FileWrite $0 " ; $7StrFilter}|$7StrFilterS}$\r$\n$\r$\n"
FileWrite $0 " $7WordReplace} '$$R9' ' ' '_' '+*' $$R9$\r$\n$\r$\n"
goto endwrite
Example6LF:

View file

@ -3,7 +3,7 @@
; Text Functions Test
;_____________________________________________________________________________
;
; 2005 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
; 2006 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
Name "Text Functions Test"
OutFile "TextFuncTest.exe"
@ -26,8 +26,11 @@ Var OUT
!insertmacro LineSum
!insertmacro FileJoin
!insertmacro TextCompare
!insertmacro TextCompareS
!insertmacro ConfigRead
!insertmacro ConfigReadS
!insertmacro ConfigWrite
!insertmacro ConfigWriteS
!insertmacro FileRecode
!insertmacro TrimNewLines
@ -37,8 +40,11 @@ Var OUT
!insertmacro un.LineSum
!insertmacro un.FileJoin
!insertmacro un.TextCompare
!insertmacro un.TextCompareS
!insertmacro un.ConfigRead
!insertmacro un.ConfigReadS
!insertmacro un.ConfigWrite
!insertmacro un.ConfigWriteS
!insertmacro un.FileRecode
!insertmacro un.TrimNewLines
@ -120,16 +126,16 @@ FunctionEnd
Section CreateTestFile
GetTempFileName $TEMPFILE1 $PLUGINSDIR
GetTempFileName $TEMPFILE1
FileOpen $HANDLE $TEMPFILE1 w
FileWrite $HANDLE '1=a$\r$\n'
FileWrite $HANDLE '2=b$\r$\n'
FileWrite $HANDLE '3=c$\r$\n'
FileWrite $HANDLE '4=d$\r$\n'
FileWrite $HANDLE '5=e$\r$\n'
FileWrite $HANDLE '1A=a$\r$\n'
FileWrite $HANDLE '2B=b$\r$\n'
FileWrite $HANDLE '3C=c$\r$\n'
FileWrite $HANDLE '4D=d$\r$\n'
FileWrite $HANDLE '5E=e$\r$\n'
FileClose $HANDLE
GetTempFileName $TEMPFILE2 $PLUGINSDIR
GetTempFileName $TEMPFILE3 $PLUGINSDIR
GetTempFileName $TEMPFILE2
GetTempFileName $TEMPFILE3
SectionEnd
@ -138,14 +144,14 @@ Section LineFind
${LineFind} '$TEMPFILE1' '/NUL' '1:-4 3 -1' 'LineFindCallback1'
IfErrors error
StrCmp $OUT '|1:2|-5|1|1=a$\r$\n|1:2|-4|2|2=b$\r$\n|3:3|-3|3|3=c$\r$\n' 0 error
StrCmp $OUT '|1:2|-5|1|1A=a$\r$\n|1:2|-4|2|2B=b$\r$\n|3:3|-3|3|3C=c$\r$\n' 0 error
StrCpy $OUT ''
SetDetailsPrint none
${LineFind} '$TEMPFILE1' '$TEMPFILE2' '1:-1' 'LineFindCallback2'
SetDetailsPrint both
IfErrors error
StrCmp $OUT '|1:-1||1|1=a$\r$\n|1:-1||2|4=d$\r$\n|1:-1||3|3=c$\r$\n|1:-1||4|2=x$\r$\n|1:-1||5|5=e$\r$\n' 0 error
StrCmp $OUT '|1:-1||1|1A=a$\r$\n|1:-1||2|4D=d$\r$\n|1:-1||3|3C=c$\r$\n|1:-1||4|2B=B$\r$\n|1:-1||5|5E=e$\r$\n' 0 error
goto +2
error:
@ -164,9 +170,9 @@ FunctionEnd
Function LineFindCallback2
StrCmp $R8 2 0 +2
StrCpy $R9 '4=d$\r$\n'
StrCpy $R9 '4D=d$\r$\n'
StrCmp $R8 4 0 +2
StrCpy $R9 '2=x$\r$\n'
StrCpy $R9 '2B=B$\r$\n'
StrCpy $OUT '$OUT|$R6|$R7|$R8|$R9'
@ -179,7 +185,7 @@ Section LineRead
${LineRead} '$TEMPFILE1' '-1' $OUT
IfErrors error
StrCmp $OUT '5=e$\r$\n' 0 error
StrCmp $OUT '5E=e$\r$\n' 0 error
goto +2
error:
@ -195,7 +201,7 @@ Section FileReadFromEnd
StrCpy $OUT ''
${FileReadFromEnd} '$TEMPFILE1' 'FileReadFromEndCallback'
IfErrors error
StrCmp $OUT '|-1|5|5=e$\r$\n|-2|4|4=d$\r$\n|-3|3|3=c$\r$\n|-4|2|2=b$\r$\n' 0 error
StrCmp $OUT '|-1|5|5E=e$\r$\n|-2|4|4D=d$\r$\n|-3|3|3C=c$\r$\n|-4|2|2B=b$\r$\n' 0 error
goto +2
error:
@ -244,19 +250,37 @@ Section TextCompare
StrCpy $OUT ''
${TextCompare} '$TEMPFILE1' '$TEMPFILE2' 'FastDiff' 'TextCompareCallback'
StrCmp $OUT '|2|4=d$\r$\n|2|2=b$\r$\n|4|2=x$\r$\n|4|4=d$\r$\n' 0 error
StrCmp $OUT '|2|4D=d$\r$\n|2|2B=b$\r$\n|4|2B=B$\r$\n|4|4D=d$\r$\n' 0 error
StrCpy $OUT ''
${TextCompare} '$TEMPFILE1' '$TEMPFILE2' 'FastEqual' 'TextCompareCallback'
StrCmp $OUT '|1|1=a$\r$\n|1|1=a$\r$\n|3|3=c$\r$\n|3|3=c$\r$\n|5|5=e$\r$\n|5|5=e$\r$\n' 0 error
StrCmp $OUT '|1|1A=a$\r$\n|1|1A=a$\r$\n|3|3C=c$\r$\n|3|3C=c$\r$\n|5|5E=e$\r$\n|5|5E=e$\r$\n' 0 error
StrCpy $OUT ''
${TextCompare} '$TEMPFILE1' '$TEMPFILE2' 'SlowDiff' 'TextCompareCallback'
StrCmp $OUT '|||2|2=b$\r$\n' 0 error
StrCmp $OUT '' 0 error
StrCpy $OUT ''
${TextCompare} '$TEMPFILE1' '$TEMPFILE2' 'SlowEqual' 'TextCompareCallback'
StrCmp $OUT '|1|1=a$\r$\n|1|1=a$\r$\n|3|3=c$\r$\n|3|3=c$\r$\n|2|4=d$\r$\n|4|4=d$\r$\n|5|5=e$\r$\n|5|5=e$\r$\n' 0 error
StrCmp $OUT '|1|1A=a$\r$\n|1|1A=a$\r$\n|4|2B=B$\r$\n|2|2B=b$\r$\n|3|3C=c$\r$\n|3|3C=c$\r$\n|2|4D=d$\r$\n|4|4D=d$\r$\n|5|5E=e$\r$\n|5|5E=e$\r$\n' 0 error
goto +2
error:
SetErrors
${StackVerificationEnd}
SectionEnd
Section TextCompareS
${StackVerificationStart} TextCompareS
StrCpy $OUT ''
${TextCompareS} '$TEMPFILE1' '$TEMPFILE2' 'SlowDiff' 'TextCompareCallback'
StrCmp $OUT '|||2|2B=b$\r$\n' 0 error
StrCpy $OUT ''
${TextCompareS} '$TEMPFILE1' '$TEMPFILE2' 'SlowEqual' 'TextCompareCallback'
StrCmp $OUT '|1|1A=a$\r$\n|1|1A=a$\r$\n|3|3C=c$\r$\n|3|3C=c$\r$\n|2|4D=d$\r$\n|4|4D=d$\r$\n|5|5E=e$\r$\n|5|5E=e$\r$\n' 0 error
goto +2
error:
@ -275,10 +299,31 @@ FunctionEnd
Section ConfigRead
${StackVerificationStart} ConfigRead
${ConfigRead} '$TEMPFILE1' '3=' $OUT
${ConfigRead} '$TEMPFILE1' '3c=' $OUT
StrCmp $OUT 'c' 0 error
${ConfigRead} '$TEMPFILE1' '6=' $OUT
${ConfigRead} '$TEMPFILE1' '6F=' $OUT
StrCmp $OUT '' 0 error
${ConfigRead} '$TEMPFILE1' 'FF=' $OUT
IfErrors 0 error
goto +2
error:
SetErrors
${StackVerificationEnd}
SectionEnd
Section ConfigReadS
${StackVerificationStart} ConfigReadS
${ConfigReadS} '$TEMPFILE1' '3C=' $OUT
StrCmp $OUT 'c' 0 error
${ConfigReadS} '$TEMPFILE1' '3c=' $OUT
IfErrors 0 error
StrCmp $OUT '' 0 error
goto +2
@ -292,16 +337,30 @@ SectionEnd
Section ConfigWrite
${StackVerificationStart} ConfigWrite
${ConfigWrite} '$TEMPFILE1' '5=' 'e**' $OUT
${ConfigWrite} '$TEMPFILE1' '5E=' 'e**' $OUT
StrCmp $OUT 'CHANGED' 0 error
${ConfigWrite} '$TEMPFILE1' '2=' '' $OUT
${ConfigWrite} '$TEMPFILE1' '2B=' '' $OUT
StrCmp $OUT 'DELETED' 0 error
${ConfigWrite} '$TEMPFILE1' '3=' 'c' $OUT
${ConfigWrite} '$TEMPFILE1' '3c=' 'c' $OUT
StrCmp $OUT 'SAME' 0 error
${ConfigWrite} '$TEMPFILE1' '6=' '*' $OUT
${ConfigWrite} '$TEMPFILE1' '6F=' '*' $OUT
StrCmp $OUT 'ADDED' 0 error
goto +2
error:
SetErrors
${StackVerificationEnd}
SectionEnd
Section ConfigWriteS
${StackVerificationStart} ConfigWriteS
${ConfigWriteS} '$TEMPFILE1' '5e=' 'e**' $OUT
StrCmp $OUT 'ADDED' 0 error
goto +2
@ -342,15 +401,16 @@ SectionEnd
Section WriteUninstaller
SetDetailsPrint none
Delete $TEMPFILE1
Delete $TEMPFILE2
Delete $TEMPFILE3
SetDetailsPrint both
goto +2
WriteUninstaller '$EXEDIR\un.TextFuncTest.exe'
SectionEnd
Function .onInit
InitPluginsDir
FunctionEnd
;############### UNINSTALL ###############
@ -361,8 +421,11 @@ Section un.Uninstall
${un.LineSum} '$TEMPFILE1' $OUT
${un.FileJoin} '$TEMPFILE1' '$TEMPFILE2' '$TEMPFILE3'
${un.TextCompare} '$TEMPFILE1' '$TEMPFILE2' 'FastDiff' 'un.TextCompareCallback'
${un.ConfigRead} '$TEMPFILE1' '3=' $OUT
${un.ConfigWrite} '$TEMPFILE1' '5=' 'e**' $OUT
${un.TextCompareS} '$TEMPFILE1' '$TEMPFILE2' 'FastDiff' 'un.TextCompareCallback'
${un.ConfigRead} '$TEMPFILE1' '3c=' $OUT
${un.ConfigReadS} '$TEMPFILE1' '3c=' $OUT
${un.ConfigWrite} '$TEMPFILE1' '5E=' 'e**' $OUT
${un.ConfigWriteS} '$TEMPFILE1' '5E=' 'e**' $OUT
${un.FileRecode} '$TEMPFILE1' 'CharToOem'
${un.TrimNewLines} 'Text Line$\r$\n' $OUT
SectionEnd

View file

@ -3,7 +3,7 @@
; Word Functions Test
;_____________________________________________________________________________
;
; 2005 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
; 2006 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
Name "Word Functions Test"
OutFile "WordFuncTest.exe"
@ -17,22 +17,36 @@ Var OUT
!include "WordFunc.nsh"
!insertmacro WordFind
!insertmacro WordFindS
!insertmacro WordFind2X
!insertmacro WordFind2XS
!insertmacro WordFind3X
!insertmacro WordFind3XS
!insertmacro WordReplace
!insertmacro WordReplaceS
!insertmacro WordAdd
!insertmacro WordAddS
!insertmacro WordInsert
!insertmacro WordInsertS
!insertmacro StrFilter
!insertmacro StrFilterS
!insertmacro VersionCompare
!insertmacro VersionConvert
!insertmacro un.WordFind
!insertmacro un.WordFindS
!insertmacro un.WordFind2X
!insertmacro un.WordFind2XS
!insertmacro un.WordFind3X
!insertmacro un.WordFind3XS
!insertmacro un.WordReplace
!insertmacro un.WordReplaceS
!insertmacro un.WordAdd
!insertmacro un.WordAddS
!insertmacro un.WordInsert
!insertmacro un.WordInsertS
!insertmacro un.StrFilter
!insertmacro un.StrFilterS
!insertmacro un.VersionCompare
!insertmacro un.VersionConvert
@ -175,6 +189,23 @@ Section WordFind
SectionEnd
Section WordFindS
${StackVerificationStart} WordFindS
${WordFindS} 'C:\io.sys|||Program Files|||WINDOWS' '||' '/|PROGRAM FILES' $OUT
StrCmp $OUT 'C:\io.sys|||Program Files|||WINDOWS' 0 error
${WordFindS} 'C:\io.sys|||Program Files|||WINDOWS' '||' '/|Program Files' $OUT
StrCmp $OUT '2' 0 error
goto +2
error:
SetErrors
${StackVerificationEnd}
SectionEnd
Section WordFind2X
${StackVerificationStart} WordFind2X
@ -219,6 +250,23 @@ Section WordFind2X
SectionEnd
Section WordFind2XS
${StackVerificationStart} WordFind2XS
${WordFind2XS} 'C:\WINDOWS C:\io.sys C:\logo.sys' '\' '.' '/LOGO' $OUT
StrCmp $OUT 'C:\WINDOWS C:\io.sys C:\logo.sys' 0 error
${WordFind2XS} 'C:\WINDOWS C:\io.sys C:\logo.sys' '\' '.' '/logo' $OUT
StrCmp $OUT '2' 0 error
goto +2
error:
SetErrors
${StackVerificationEnd}
SectionEnd
Section WordFind3X
${StackVerificationStart} WordFind3X
@ -260,6 +308,23 @@ Section WordFind3X
SectionEnd
Section WordFind3XS
${StackVerificationStart} WordFind3XS
${WordFind3XS} '[1.AAB];[2.BAA];[3.BBB];' '[' 'AA' '];' '/2.baa' $OUT
StrCmp $OUT '[1.AAB];[2.BAA];[3.BBB];' 0 error
${WordFind3XS} '[1.AAB];[2.BAA];[3.BBB];' '[' 'AA' '];' '/2.BAA' $OUT
StrCmp $OUT '2' 0 error
goto +2
error:
SetErrors
${StackVerificationEnd}
SectionEnd
Section WordReplace
${StackVerificationStart} WordReplace
@ -301,6 +366,23 @@ Section WordReplace
SectionEnd
Section WordReplaceS
${StackVerificationStart} WordReplaceS
${WordReplaceS} 'C:\io.sys C:\logo.sys C:\WINDOWS' 'SYS' 'bmp' '+2' $OUT
StrCmp $OUT 'C:\io.sys C:\logo.sys C:\WINDOWS' 0 error
${WordReplaceS} 'C:\io.sys C:\logo.sys C:\WINDOWS' 'sys' 'bmp' '+2' $OUT
StrCmp $OUT 'C:\io.sys C:\logo.bmp C:\WINDOWS' 0 error
goto +2
error:
SetErrors
${StackVerificationEnd}
SectionEnd
Section WordAdd
${StackVerificationStart} WordAdd
@ -339,6 +421,23 @@ Section WordAdd
SectionEnd
Section WordAddS
${StackVerificationStart} WordAddS
${WordAddS} 'C:\io.sys C:\WINDOWS' ' ' '+C:\windows C:\config.sys' $OUT
StrCmp $OUT 'C:\io.sys C:\WINDOWS C:\windows C:\config.sys' 0 error
${WordAddS} 'C:\io.sys C:\WINDOWS' ' ' '+C:\WINDOWS C:\config.sys' $OUT
StrCmp $OUT 'C:\io.sys C:\WINDOWS C:\config.sys' 0 error
goto +2
error:
SetErrors
${StackVerificationEnd}
SectionEnd
Section WordInsert
${StackVerificationStart} WordInsert
@ -371,6 +470,23 @@ Section WordInsert
SectionEnd
Section WordInsertS
${StackVerificationStart} WordInsertS
${WordInsertS} 'C:\io.sys x C:\logo.sys' ' X ' 'C:\NTLDR' '+2' $OUT
StrCmp $OUT 'C:\io.sys x C:\logo.sys X C:\NTLDR' 0 error
${WordInsertS} 'C:\io.sys x C:\logo.sys' ' x ' 'C:\NTLDR' '+2' $OUT
StrCmp $OUT 'C:\io.sys x C:\NTLDR x C:\logo.sys' 0 error
goto +2
error:
SetErrors
${StackVerificationEnd}
SectionEnd
Section StrFilter
${StackVerificationStart} StrFilter
@ -409,6 +525,21 @@ Section StrFilter
SectionEnd
Section StrFilterS
${StackVerificationStart} StrFilterS
${StrFilterS} '123abc 456DEF 7890|%#' '13' 'af' '4590' $OUT
IfErrors error
StrCmp $OUT '123a 6 78|%#' 0 error
goto +2
error:
SetErrors
${StackVerificationEnd}
SectionEnd
Section VersionCompare
${StackVerificationStart} VersionCompare
@ -478,12 +609,19 @@ SectionEnd
Section un.Uninstall
${un.WordFind} 'C:\io.sys C:\Program Files C:\WINDOWS' ' C:\' '-02' $OUT
${un.WordFindS} 'C:\io.sys C:\Program Files C:\WINDOWS' ' C:\' '-02' $OUT
${un.WordFind2X} '[C:\io.sys];[C:\logo.sys];[C:\WINDOWS]' '[C:\' '];' '+2' $OUT
${un.WordFind2XS} '[C:\io.sys];[C:\logo.sys];[C:\WINDOWS]' '[C:\' '];' '+2' $OUT
${un.WordFind3X} '[1.AAB];[2.BAA];[3.BBB];' '[' 'AA' '];' '+1' $OUT
${un.WordFind3XS} '[1.AAB];[2.BAA];[3.BBB];' '[' 'AA' '];' '+1' $OUT
${un.WordReplace} 'C:\io.sys C:\logo.sys C:\WINDOWS' 'SYS' 'bmp' '+2' $OUT
${un.WordReplaceS} 'C:\io.sys C:\logo.sys C:\WINDOWS' 'SYS' 'bmp' '+2' $OUT
${un.WordAdd} 'C:\io.sys C:\WINDOWS' ' ' '+C:\WINDOWS C:\config.sys' $OUT
${un.WordAddS} 'C:\io.sys C:\WINDOWS' ' ' '+C:\WINDOWS C:\config.sys' $OUT
${un.WordInsert} 'C:\io.sys C:\WINDOWS' ' ' 'C:\logo.sys' '-2' $OUT
${un.WordInsertS} 'C:\io.sys C:\WINDOWS' ' ' 'C:\logo.sys' '-2' $OUT
${un.StrFilter} '123abc 456DEF 7890|%#' '+' '' '' $OUT
${un.StrFilterS} '123abc 456DEF 7890|%#' '+' '' '' $OUT
${un.VersionCompare} '1.1.1.9' '1.1.1.01' $OUT
${un.VersionConvert} '9.0a' '' $OUT
SectionEnd
SectionEnd