9

每当我的 windows 窗体应用程序第一次运行时,托盘图标保持可见大约不到一分钟,然后它会自动隐藏,我该怎么做才能让它粘住而不是自动隐藏?

我尝试搜索并找不到任何有用的信息。

看来这是 Windows 7 及更高版本的默认行为,我想知道是否有办法从我的应用程序内部覆盖该行为?

4

2 回答 2

7

不支持以编程方式覆盖系统的默认显示/隐藏通知图标行为。MSDN

在 Windows 7 上将图标添加到通知区域时,默认会添加到通知区域的溢出部分。此区域包含处于活动状态但在通知区域中不可见的通知区域图标。只有用户可以将图标从溢出中提升到通知区域,尽管在某些情况下系统可以将图标临时提升到通知区域作为短预览(不到一分钟)。

强调我的。

于 2013-03-01T01:33:35.993 回答
2

毫无疑问,您已经阅读了评论中的讨论,确实没有支持这样做的方式。也就是说,如果您下定决心并且有时间进行一些挖掘,我建议您使用一些工具绕过文档并通过通知设置查看引擎盖下实际发生的情况。可能有适当的文档,但我没有找到它。

蛮力方法是使用 SysInternal 的 RegMon 工具来查看所有注册表访问。如果您将其与“Explorer.exe”进程相关联,您将看到有关桌面和开始栏正在做什么的所有相关信息,包括任何文件访问。别搞错了——这是一种蛮力的方法,需要大量的努力和挖掘。一旦绑定到 explorer.exe 进程,您就可以更改通知设置。查看和调查过程所做的更改将使您了解相关设置的存储位置以及存储方式。不利的一面是,将有大量数据需要搜索和调查以找出发生了什么,但这是可以做到的。这不是一个理想的解决方案,但如果没有其他解决方案,恐怕您将面临粗略和现成的方法。这取决于您想为此付出多少努力。

于 2013-03-01T01:56:29.663 回答