我正在制作这个“你在听什么”- 用于学习目的的插件,它将当前的 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/