Solved

How can I list all icons in systray?

Posted on 2004-04-25
9
405 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
Independent Software Vendors: 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 250 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

Ready to improve network connectivity? Watch this webinar to learn how SD-WANs and a one-click instant connect tool can boost provisions, deployment, and management of your cloud connection.

Question has a verified solution.

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

Introduction The parallel port is a very commonly known port, it was widely used to connect a printer to the PC, if you look at the back of your computer, for those who don't have newer computers, there will be a port with 25 pins and a small print…
Introduction I have seen many questions in this Delphi topic area where queries in threads are needed or suggested. I know bumped into a similar need. This article will address some of the concepts when dealing with a multithreaded delphi database…
There's a multitude of different network monitoring solutions out there, and you're probably wondering what makes NetCrunch so special. It's completely agentless, but does let you create an agent, if you desire. It offers powerful scalability …
NetCrunch network monitor is a highly extensive platform for network monitoring and alert generation. In this video you'll see a live demo of NetCrunch with most notable features explained in a walk-through manner. You'll also get to know the philos…

734 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