【发布时间】:2013-08-09 01:25:51
【问题描述】:
以下 VB 脚本打开 CMD 窗口并执行 ping 到 IP - 127.0.0.1
我不明白为什么 CMD 窗口的输出只包括 ping 的结果,而不包括“ping 127.0.0.1”?
我的问题需要在我的 VB 脚本中进行哪些更改才能从 CMD 窗口看到 ping 命令,而不仅仅是 ping 结果?
我的 VB 脚本:
Dim oShell
Set oShell = WScript.CreateObject ("WScript.Shell")
oShell.run "cmd /k CD C:\Program Files & ping 127.0.0.1 " ,1 , true
我从 CMD 看到的只是:( ping 127.0.0.1 not apears ?)
Pinging 127.0.0.1 with 32 bytes of data:
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Ping statistics for 127.0.0.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
【问题讨论】:
-
为什么不直接使用批处理文件?
-
我已经使用了 VB 脚本的 cod,所以这个选项不相关
-
您可以使用“cmd /k @echo ping 127.0.0.1 & ping 127.0.0.1”。不需要 CD(实际上由于目录名称中的空格而无法使用)。
-
这正是预期的结果。如果您在实际命令提示符下键入“ping 127.0.0.1”,则输出不会在开始向您显示结果之前再次重复您的
ping 127.0.0.1。为什么仅仅因为您是从 VBScript 运行它就期望它这样做? -
使用
MsgBox显示命令字符串,然后通过oShell.Run运行它。
标签: vbscript