C# 从 notifyIcons(托盘图标)中获取文本

标签 c# text icons notifyicon tray

我正在制作这个“你在听什么”- 用于学习目的的插件,它将当前的 Spotify 或 Winamp 歌曲显示为 IM 客户端中的消息。

到目前为止它真的很简单,我只是像这样从标题中播放歌曲

Process.GetProcessesByName("spotify");

然后选择歌曲部分(“Spotify - <歌曲名称>”)

proc.MainWindowTitle.Substring(10);

但是,大多数人不会将主窗口保持打开状态或将其最小化到任务栏,而只会将其显示为托盘图标。我想从那里获取文本(将鼠标悬停在其上方时显示的文本)。

有什么简单的方法可以做到这一点吗?

谢谢

最佳答案

设置图标的工具提示文本需要 Shell_NotifyIcon() 和 NIM_UPDATE 消息,设置 NOTIFYICONDATA.szTip 成员。

问题在于,如果您没有托盘图标,您将无法找出需要使用的 hWnd 和 uID 值。 Windows 不支持枚举托盘图标。这也会阻止获取工具提示文本。

关于C# 从 notifyIcons(托盘图标)中获取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2081630/

相关文章:

c# - 无法从 ASP.NET 调用 DLL

javascript - HTML/CSS - 无论文本内容如何,​​所有文本元素都是 23 像素宽

javascript - 两个视觉上相同的文本与剪贴板中的文本有何不同?

visual-studio-code - VSCode : What's that green statusbar terminal-ish icon in October 2019 release notes?

c# - 比较 android(java) 和 c# 中的 md5 哈希

c# - 在 bing map xaml 中绑定(bind)位置

c# - Properties.Resources 图标名称未出现在智能感知中

javascript - React-native-vector-icons 显示模糊的符号

c# - 如何首先使用代码向链接表添加列

r - 在 R shiny 中垂直对齐文本