Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

How can I list all icons in systray?

Posted on 2004-04-25
9
Medium Priority
?
417 Views
Last Modified: 2010-04-05
I'm trying to make myself a "slimer" shell...
My only problem is applications disappearing in what should be the systray.
They minimize to nowhere...
How can i list all apps using Tray Icons ?
0
Comment
Question by:The_SnifF
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 3
9 Comments
 
LVL 3

Expert Comment

by:smot
ID: 10912844
Hi,

With madKernel you can manage tray icons (see API "Shell_NotifyIcon") of any application.
This kind of functionality is totally undocumented, but works well from win95 to winXP

http://help.madshi.net/TrayIcons.htm 

Download:
http://madshi.bei.t-online.de/madCollection.exe


Example:

uses
  MadKernel;

      for i := 0 to TrayIcons.ItemCount -1 do
      begin
        ShowMessgage(TrayIcons[i].Window.OwnerProcess.ExeFile);
      end;
0
 

Author Comment

by:The_SnifF
ID: 10922878
thanks you so so soooooo much! :))
0
 

Author Comment

by:The_SnifF
ID: 10922895
Damn, ItemCount returns 0, and there are icons there... :S

BTW, can I get this collections source?
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 20

Expert Comment

by:Madshi
ID: 10922939
It works only if the tray window is visible, which is probably not the case if you're trying to write your own shell, right? There are some projects out there with full sources for replacing the Windows shell - including the tray icon stuff. I don't have any links (sorry), but a search in google might help.
0
 

Author Comment

by:The_SnifF
ID: 10923404
If anyone could help me find links, i'd be grateful.
I searched google for days!
0
 
LVL 20

Accepted Solution

by:
Madshi earned 750 total points
ID: 10925717
0
 

Author Comment

by:The_SnifF
ID: 10926542
Thanks, though I found that page, the one with Delphi source isn't available.
And one VB source I couldn't get...
I'll try the others :)
0
 

Author Comment

by:The_SnifF
ID: 10969307
ok, i got it, my apps "says" it is the systray
that way:
  WM_TASKBARCREATED := RegisterWindowMessage('TaskbarCreated');
  PostMessage(HWND_BROADCAST, WM_TASKBARCREATED, 0, 0);
0
 
LVL 20

Expert Comment

by:Madshi
ID: 11140950
Yes, and I guess you have to create your own window with the correct class name which claims to be the systray.
0

Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A lot of questions regard threads in Delphi.   One of the more specific questions is how to show progress of the thread.   Updating a progressbar from inside a thread is a mistake. A solution to this would be to send a synchronized message to the…
Creating an auto free TStringList The TStringList is a basic and frequently used object in Delphi. On many occasions, you may want to create a temporary list, process some items in the list and be done with the list. In such cases, you have to…
This course is ideal for IT System Administrators working with VMware vSphere and its associated products in their company infrastructure. This course teaches you how to install and maintain this virtualization technology to store data, prevent vuln…
Have you created a query with information for a calendar? ... and then, abra-cadabra, the calendar is done?! I am going to show you how to make that happen. Visualize your data!  ... really see it To use the code to create a calendar from a q…
Suggested Courses

664 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question