宏的用法例子
优质
小牛编辑
131浏览
2023-12-01
SetCompressor /SOLID lzma SetCompress force XPStyle on OutFile quot;aaa.EXE" Name quot;aaa" !macro add a b c ;一个实现(a+b)*(a-b)的宏 IntOp $R0 ${a} - ${b} IntOp $R1 ${a} + ${b} IntOp ${c} $R0 * $R1 !macroend /* 注意:!macro和!insertmacro用法: !macro add a b c ;!macro 宏名 参数一 参数二 参数三 ... !insertmacro add 10 20 $0 ;!insertmacro 宏名 参数一 参数二 参数三 ... 使用的时候!insertmacro的参数会代入!macro里面使用 就是如!insertmacro add 10 20 $0 代入!macro add a b c .那么在!macro add里面等效于执行了 IntOp $R0 10 - 20 IntOp $R1 10 + 20 IntOp $0 $R0 * $R1 */ Section !insertmacro add 10 20 $0 ;调用宏 DetailPrint '$0' !insertmacro add 5 10 $0 DetailPrint '$0' !insertmacro add 2 10 $0 DetailPrint '$0' !insertmacro add 2 587 $0 DetailPrint '$0' !insertmacro add 15 58 $0 DetailPrint '$0' !insertmacro add 158 58 $0 DetailPrint '$0' !insertmacro add 0 4 $0 DetailPrint '$0' !insertmacro add 87 587 $0 DetailPrint '$0' !insertmacro add 587 5 $0 DetailPrint '$0' !insertmacro add 8 58 $0 DetailPrint '$0' SectionEnd