2014-11-20 75 views
2

我正在編寫一個vbs腳本,該腳本使用WScript.Echo命令向控制檯輸出,以讓用戶知道該程序處於什麼樣的迭代狀態。這工作得很好,直到我今天再次處理它時,腳本的所有突變都以彈出框的形式回顯消息。我將代碼剝離到裸露的骨頭上,它仍然在做,我完全被困惑。Wscript.Echo在什麼情況下顯示爲彈出框而不是控制檯

Option Explicit 

Call F 

Sub F() 
    Dim TimeInterval 
    Dim CycleCount 
    Dim CycleCounter 

    TimeInterval=FormatNumber(WScript.Arguments(0),0) 
    CycleCount=WScript.Arguments(1) 
    CycleCounter = 0 

    For CycleCounter = 1 To CycleCount 
     WScript.Sleep(TimeInterval) 
     WScript.Echo "Iteration " & CycleCounter & "/" & CycleCount 
    Next 
End Sub 

我不認爲它是它正在被運行是導致它的代碼,而是環境,但我不知道我怎麼會去有關檢查哪裏改變設置或如何設置甚至改變了首位。

回答

4

如果您使用Wscript.exe來運行腳本,它將顯示一個彈出窗口。如果您使用CScript.exe來運行腳本,它將顯示在控制檯中。

看到這個(網絡上的許多其他資源):Should we use CScript.exe or WScript.exe to run .vbs files?

+0

這會確定解釋,正好說明怪異的問題往往有最簡單的解決方案。 – Mason 2014-11-20 16:37:47

相關問題