对于那些使用过InstallAnywhere的人,我有一个问题:
我基本上在InstallAnywhere项目中编写了一个while循环。我想要找到的是在“While循环”中实现计数器的简单方法。这是我尝试的一些伪代码:
Set InstallAnywhere Variable: $COUNT$ = 0
Jump Label: while
Execute Script/Batch File:
@echo off
set /a TEMP_NUM=$COUNT$+1 > nul
echo %TEMP_NUM%
Set InstallAnywhere Variable: $COUNT$ = $EXECUTE_STDOUT$
Jump: while Rule: $COUNT$ [Less Than or Equal to] 100
以上代码将$ COUNT $设置为以下内容:
Loop 0:
1
Loop 1:
1
Loop 2:
1
...
我想知道是否会发生这种情况是因为InstallAnywhere在第一个循环中将批处理文件中的$ COUNT $替换为0,然后在后续循环中重新使用已替换$ COUNT $的同一批处理文件(如在batch for循环或if语句。)
答案 0 :(得分:0)
是否可以使用特殊键$ lax.nl.env.counts $从OS ENV表访问$ COUNTS $?每个文档,
您可以访问任何系统环境变量(例如,访问权限) 路径通过$ lax.nl.env.path $)通过将属性名称指定为 全小写字符串。这些属性在应用时得到解决 运行时,LaunchAnywhere执行时。您也可以访问 系统环境变量通过InstallAnywhere变量。
答案 1 :(得分:0)
只需在代码中添加一些行号:
- 设置InstallAnywhere变量:$ COUNT $ = 0
- 跳转标签:while
- 执行脚本/批处理文件:
- @echo off
- 设置/ a TEMP_NUM = $ COUNT $ + 1> NUL
- echo%TEMP_NUM%
- 设置InstallAnywhere变量:$ COUNT $ = $ EXECUTE_STDOUT $
- 跳转:while规则:$ COUNT $ [小于或等于] 100
醇>
在第5行和第6行中,您实际所做的是: echo $ COUNT $ + 1
在第7行中,您将COUNT设置为$ EXECUTE_STDOUT $(通常为0,我相信?) 这可以解释为什么它每次打印1,因为$ COUNT $在每个循环结束时设置为0。