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

使用NotifyIcon.ShowBalloonTip显示通知无响应的解决方法求助

解决PowerShell中System.Windows.Forms.NotifyIcon.ShowBalloonTip无响应的问题

你的脚本无法显示气泡提示的核心原因是未为NotifyIcon实例设置Icon属性——Win10/Win11对NotifyIcon的显示要求进行了调整,必须关联有效图标才能触发气泡提示。以下是修复后的完整代码:

Add-Type -AssemblyName System.Windows.Forms
Add-Type -AssemblyName System.Drawing  # 显式添加更稳妥,部分系统可省略

$NotifyIcon = [System.Windows.Forms.NotifyIcon]::new()
# 为NotifyIcon指定图标,这里使用系统内置的信息类图标
$NotifyIcon.Icon = [System.Drawing.SystemIcons]::Information
# 显式使用ToolTipIcon枚举值替代字符串,避免隐式转换问题
$NotifyIcon.ShowBalloonTip(5000, 'Title', 'Balloon Tip Text', [System.Windows.Forms.ToolTipIcon]::Info)

# 脚本执行完毕后清理资源,防止托盘图标残留
Start-Sleep -Seconds 5
$NotifyIcon.Dispose()

关键细节说明:

  • 必须设置Icon:可以使用系统内置图标(System.Drawing.SystemIcons包含Information、Warning、Error等选项),也可以指定本地图标文件:
    $NotifyIcon.Icon = [System.Drawing.Icon]::FromFile("C:\your-icon-path.ico")
    
  • 枚举值替代字符串:原代码中最后一个参数用'Info'字符串存在隐式转换风险,显式使用[System.Windows.Forms.ToolTipIcon]::Info更可靠
  • 清理资源:调用Dispose()可以避免图标在系统托盘残留,否则需要关闭PowerShell进程才能清除残留图标

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 11:02:08