2010-01-17 5 views
8

Estoy creando este "lo que estás escuchando" - un complemento para fines de aprendizaje que muestra la canción actual de Spotify o Winamp como un mensaje en un cliente de MI.C# Liberando el texto notifyIcons (íconos de la bandeja)

Hasta ahora Es muy simple, sólo estoy recibiendo la canción reproducida desde el título como tal

Process.GetProcessesByName("spotify"); 

y luego simplemente seleccionar la parte de la canción ("Spotify - < título de la canción>")

proc.MainWindowTitle.Substring(10); 

Sin embargo, la mayoría de las personas no mantienen la ventana principal abierta o minimizada en la barra de tareas, pero la tienen visible solo como un icono de bandeja. Me gustaría obtener el texto de allí (el que se muestra al pasar el cursor sobre él).

¿Hay alguna manera fácil de hacer esto?

Gracias

Respuesta

4

Ajuste del texto de sugerencia para el icono requiere Shell_NotifyIcon() con el mensaje NIM_UPDATE, fijando el miembro de NOTIFYICONDATA.szTip.

Lo sorprendente es que no puede averiguar qué valores de hWnd y uID debe usar si no posee el icono de la bandeja. Windows no admite la enumeración de iconos de bandeja. Lo cual también impide obtener el texto de información sobre herramientas.

+0

En realidad, puede enumerarlos: http://www.codeproject.com/KB/applications/ShellTrayInfo.aspx – Giorgi

Cuestiones relacionadas