2

我正在 VS2017 中编写一个 VB.NET 应用程序,以在 Windows 10 上运行。我希望将主(也是唯一的)表单最小化为系统托盘图标。那部分我工作得很好。下一部分,显示气球提示弹出通知(例如,“应用程序仍在运行”),根本不工作。

我已经检查/注意到以下内容:

  • NotifyIcon对象在设计器网格以及表单的 vb.net 代码隐藏中分配了一个图标,其关联的BalloonTipIcon成员/属性也是如此
  • 机器上的组策略似乎没有禁止使用气球提示
  • 气球提示似乎没有在注册表中被禁用
  • 该程序在 Windows 8.1 Pro 中按预期工作并显示 BalloonTip,但在 Windows 10 Enterprise N 2016 LTSB中没有。

该机器位于一个确实有组策略管理的域中,但是在我的机器上找到的结果策略集似乎并不表明气球提示已被禁用。

从 StackOverflow 复制和粘贴确切的代码不起作用。那么问题必须出在系统本身。

这是代码(适用于 W8.1 但不适用于 W10):

Private Sub frmMain_Resize(sender As Object, e As EventArgs) Handles Me.Resize

    Try

        If Me.WindowState = FormWindowState.Minimized Then

            NotifyIcon1.Visible = True
            NotifyIcon1.Icon = SystemIcons.Application
            NotifyIcon1.BalloonTipIcon = ToolTipIcon.Info
            NotifyIcon1.BalloonTipTitle = "App Title"
            NotifyIcon1.BalloonTipText = "The App is still open!"
            NotifyIcon1.ShowBalloonTip(50000)
            ShowInTaskbar = False

        End If

    Catch ex As Exception

        ErrorHandler(ex)

    End Try

End Sub

我还能在哪里看?

交叉发布在超级用户上

4

3 回答 3

0

所以事实证明,我爱上了书中最古老的把戏之一。更改注册表项后,我需要完全重新启动。

所以,对我来说,让气球提示出现在 Windows 10 中需要以下内容:

  1. 打开regedit.exe

  2. 导航HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced

  3. 设置(或添加)EnableBalloonTips(作为 REG_DWORD)并将值设置为1

  4. 重启。

瞧。问题解决了。

于 2018-08-15T22:30:06.297 回答
0

我发现即使我在代码中声明了图标,我也必须最初将图标添加到 notifyIcon1.icon 属性。

于 2018-11-11T11:25:04.540 回答
0

在我的情况下,David Mancini 的响应还不够,我还必须在设置 -> 系统 -> 通知和操作下启用“从应用程序和其他发件人获取通知” 在此处输入图像描述

于 2021-06-21T16:19:05.723 回答