用VBS写secureCRT的宏调用脚本,语法用sub main,screen,当信息出现“℃”时用电脑自带的截图工具截图并保存在文件夹“D盘”中
时间: 2024-09-24 16:08:57 浏览: 51
在VBS(Visual Basic for Applications Scripting)中,你可以编写一个宏来实现SecureCRT(终端仿真软件)的操作,比如检测屏幕内容并自动截图。以下是一个基本的示例,它假设你已经设置了Sub Main函数作为宏的主要入口点,并且想要监听"℃"字符出现时触发截图:
```vbscript
Sub Main()
On Error Resume Next '启用错误处理以避免中断程序
Dim screen As CRT.Screen '引用SecureCRT的对象
Set screen = Session.Screen '获取当前会话屏幕对象
Do While True '进入无限循环监听
Dim line As String
line = screen.ReadLine() '读取一行数据
If InStr(1, line, "℃") > 0 Then '如果找到"℃"
Call TakeScreenshot '调用自定义截图函数
Exit Do '退出循环
End If
Loop
WScript.Quit '关闭脚本
End Sub
Sub TakeScreenshot
Dim wshShell As Object '创建Windows Shell对象
Set wshShell = CreateObject("WScript.Shell")
Dim savePath As String '指定保存路径
savePath = "D:\Screenshots\" '这里假设你的截图文件夹名为"Screenshots"
'生成随机文件名
Dim fileName As String
fileName = "screenshot_" & Format(Date/Time, "yyyy-mm-dd_hh-mm-ss") & ".png"
'使用shell对象调用操作系统截图命令,并保存到指定路径
wshShell.SendKeys "%{printscreen}" '发送PrtScn键截图
wshShell.SendKeys "^a" '选择全部
wshShell.SendKeys "c" '复制
wshShell.Run "cmd /c ""echo | clip""", vbNormalFocus, False '粘贴到剪贴板
wshShell.Run "start "" "" "" "" "" "" """ & savePath & fileName, vbNormalFocus, False '打开画图并粘贴保存
Set wshShell = Nothing '释放对象
End Sub
阅读全文