Archive: Possible Bug?


Possible Bug?
Hello,

What I am trying to do here is to show a custom page named warning if the condition in this script is true:

${If} $Var1 = $Var2
${AndIF} $Var2 = $Var3
!insertmacro MUI_HEADER_TEXT "$(TEXT_IO_TITLE)" "$(TEXT_IO_SUBTITLE)"
!insertmacro MUI_INSTALLOPTIONS_DISPLAY "WARNING.ini"
${Else}
abort
${EndIf}

FunctionEnd

I inserted 3 ReadRegString command in a Function .oninit, which means these same Variables will each take a certain value in the following format: [Hard Drive]:\[Folder]\[Subfolder]. However, even if the 3 variables are different, the warning page still show up. You can easily reproduce this problem by simply replacing the variables in the script with the following values:

$Var1='C:\Test1'
$Var2='C:\Test2'
$Var3='C:\Test3'

Even if these 3 values are completely different, the warning page will still show up. I however tried to put plain numbers (such as 1, 2 and 3) instead of directory paths and it worked perfectly. Is this a bug or am I doing something wrong? Thanks in advance for the help.


See LogicLib documentation

= signed integer tests
== string tests

You should try like this e.g.

${If} $Var1 == $Var2
${AndIF} $Var2 == $Var3