2010-01-17 13 views
8

我正在制作此“正在聆听的内容” - 用于学习目的的插件,在IM客户端中将当前Spotify或Winamp歌曲显示为消息。C#将文本关闭notifyIcons(托盘图标)

到目前为止,它真的很简单,我只是得到从标题打出像这样

Process.GetProcessesByName("spotify"); 

这首歌,然后就挑选出这首歌的一部分(“Spotify的 - <歌曲名称>”)

proc.MainWindowTitle.Substring(10); 

但是,大多数人不会将主窗口保持打开或最小化到任务栏,但只能将其作为托盘图标显示。我想从那里得到文本(当它悬停在上面时显示的文本)。

有没有简单的方法来做到这一点?

由于

回答

4

设置为图标的工具提示文本需要Shell_NotifyIcon()与NIM_UPDATE消息,设置NOTIFYICONDATA.szTip构件。

该showstopper是,你不能找出你需要使用什么hWnd和uid值,如果你不拥有托盘图标。 Windows不支持列举托盘图标。这也阻止获取工具提示文本。

+0

其实你可以枚举它们:http://www.codeproject.com/KB/applications/ShellTrayInfo.aspx – Giorgi 2010-12-20 09:21:38