You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VBS调用SAPI实现定时报时 新增Teams进程检测避免打断会议

VBS自动报时脚本修改指南

多会议软件检测修改实现

以下是支持同时检测Zoom和Teams进程的完整可运行代码,原有报时逻辑完全保留:

Dim hour_now, minute_now, speaks, speech
hour_now = hour(time)
minute_now = minute(time)

If minute_now = 0 Then
    speaks = "Il est " & hour_now & " heures"
Else
    speaks = "Il est " & hour_now & " heures " & minute_now & " minutes" 
End If

Set speech = CreateObject("sapi.spvoice")

Dim strComputer
strComputer = "."

Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
' 同时检测Zoom和Teams进程,任意一个运行就跳过报时
Set colProcessList = objWMIService.ExecQuery _
    ("Select Name from Win32_Process WHERE Name LIKE 'zoom%' OR Name LIKE 'Teams%'")

If colProcessList.count = 0 then
    speech.Speak speaks
End if

Set objWMIService = Nothing
Set colProcessList = Nothing
Set speech = Nothing

核心改动说明:

  • 调整了WMI进程查询的条件,新增Teams进程匹配规则,只要Zoom或Teams任意一个进程处于运行状态,就不会触发语音报时,完全符合规避打断会议的需求
  • 原有法语报时逻辑、定时任务适配规则全部保留,不需要修改任务计划等配套配置

报时功能快速开关方案

提供两个零额外开发成本的实现方案:

  • 方案一:任务计划快捷开关
    基于你已配置的任务计划定时触发规则,创建两个桌面快捷方式即可一键切换状态:
    • 启用报时的快捷方式目标填:schtasks /change /tn "你创建的报时任务名称" /enable
    • 禁用报时的快捷方式目标填:schtasks /change /tn "你创建的报时任务名称" /disable
      两个快捷方式都右键选择「属性」→「高级」→勾选「用管理员身份运行」,点击即可秒级切换报时状态,无需打开任务计划面板操作。
  • 方案二:脚本内置开关
    在脚本最顶部添加常量定义即可手动快速开关,不需要修改其他逻辑:
    ' 放在脚本最开头,需要关闭时改成False即可
    Const ENABLE_REPORT = True
    ' ... 原有中间代码不变 ...
    ' 播报逻辑修改为如下判断
    If ENABLE_REPORT And colProcessList.count = 0 then
        speech.Speak speaks
    End if
    

内容的提问来源于stack exchange,提问作者daileyco

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 07:06:02