我一直在尝试使用Do Loop,但由于某些原因,当代码遇到do loop命令时,它就会退出。它甚至没有给我任何错误。在此语句之后有大量脚本,但它不会被处理和执行。有没有我可以使用的替代方法,或者我只是做错了?
Do while b = vbRetry
msgbox "Remote Keyboard Control accepted from ip 346.195.639.63"
msgbox "Attempting to Block Connection..."
b = msgbox("Could not block connection.", vbCritical+vbAbortRetryIgnore+vbSystemModal)
Loop
答案 0 :(得分:5)
问题是由于您未正确初始化b
。 while
语句的第一件事就是评估循环条件。在您的情况下,会发生以下情况:
- b
未定义
- b
是否等于vbRetry
?不,让我们停止循环(甚至在开始之前)。
由于您需要至少循环一次,因此您应该按如下方式重写脚本:
Do
msgbox "Remote Keyboard Control accepted from ip 346.195.639.63"
msgbox "Attempting to Block Connection..."
b = msgbox("Could not block connection.", vbCritical+vbAbortRetryIgnore+vbSystemModal)
Loop while b = vbRetry
这意味着“至少循环一次,然后检查b是否等于vbRetry”。
请注意,我不是100%确定语法是否正确,我有一段时间没有使用过vbScript(没有双关语)。