我尝试了一些事情,从WScript.Echo "cls"
到我在互联网上找到的疯狂功能。
Set CrlScrn = WScript.CreateObject("WScript.Shell")
CrlScrn.SendKeys "CLS + {ENTER}"
和
Set CrlScrn = WScript.CreateObject("WScript.Shell")
CrlScrn.Run "cmd echo /c cls"
Set CrlScrn = Nothing
这些都不起作用。
我只是通过运行cscript myscript.vbs
来执行我的vbs,这样我就可以在控制台中查看输出。关于如何清除屏幕的任何其他想法?
答案 0 :(得分:0)
在How to use ANSI escape sequences with CSCRIPT on Windows 10? 的帮助下
对我来说,它可以在VBScript中工作(在使用cmd的CScript上),其中有两行:
1
对于第一行,我使用了MS Docs中的参考:Console Virtual Terminal Sequences 根据Win link
中的答案,使用Winsi之后的第二行使用Ansi.sys。但是现在我必须在序列中添加']'字符(如ms doc中一样)
首先,我必须将此值添加到注册表中:
'move cursor to beggining of cmd screen
WScript.StdOut.Write Chr(27) & "[34A"
'clear screen
WScript.StdOut.Write Chr(27) & "[2J"
...而且我不需要使用powershell hack(通过将其添加到脚本的开始中)(也在引用的stackoverflow线程中)
[HKEY_CURRENT_USER\Console]
"VirtualTerminalLevel"=dword:00000001