Var first
Var second
Section
Strcpy $first "1.0"
Strcpy $Second "2.1"
${If} $second > $first
MessageBox MB_OK "Grater"
${Else}
MessageBox MB_OK "Smaller"
${EndIf}
SectionEnd
我已经编写了上面的代码,但它显示的结果更小。以及如何将来自文本文件的整数或双精度值与预定义的双精度值或整数值进行比较?
答案 0 :(得分:4)
使用LogicLib,您可以比较两个这样的整数:
Var first
Var second
Section
StrCpy $first 1
StrCpy $Second 2
${If} $second > $first
MessageBox MB_OK "Grater"
${Else}
MessageBox MB_OK "Smaller"
${EndIf}
SectionEnd
StrCpy
中的资本 C 。同时尝试从数字中删除引号("
)以使它们成为整数。
另一种方式是:
Push $first
Push $Second
StrCpy $first 8
StrCpy $Second 2
IntCmp $first $Second Equal Val1Less Val1More
Equal:
DetailPrint "$first = $Second"
Goto End
Val1Less:
DetailPrint "$first < $Second"
Goto End
Val1More:
DetailPrint "$first > $Second"
Goto End
End:
Pop $Second
Pop $first
答案 1 :(得分:1)
NSIS不支持基本指令中的浮点数,您需要使用属于默认安装的Math plugin ...