我正在尝试使用 vbscript 并且只运行非常基本的代码,我猜有一个我找不到的简单解决方案。我正在运行这是带有 cscript 的 CMD。
我有一个名为 Pause 的子例程,它假设停止脚本并要求用户按 Enter 继续。
sub Pause(strPause)
WScript.Echo (strPause)
Do While Not WScript.StdIn.AtEndOfLine
Input = WScript.StdIn.Read(1)
Loop
End sub
我在一个简单的循环中调用这个子例程,打印出 1 到 10。它在第一次调用后正确暂停,但之后它只是打印出其余的没有暂停。它仍然与暂停字符串相呼应,因此它似乎正在击中 Sub。
For i = 1 To 10
' Print i to the Output window.
Wscript.echo"loop index is " & i
' Wait for user to resume.
Pause("Press Enter to continue")
Next
不确定 sub 内的 Do While 循环是否导致问题,或者是否需要以某种方式清除 Input 值?当从 Sub 中删除 Do While 循环时,它似乎工作得更好一些,每两个数字后暂停,而不是仅仅打印出所有内容。然而,我仍然无法让它在每个循环后暂停。