System Tray, Redux

Posted On 2017-08-30 by BlackBeltVB
Tags: VB6 Windows API VB6 System Services 
Views: 85

Title Uploaded Size
SYSTRAY2.ZIP 9/1/2017 9:09:22 AM 4,003

How to properly display a pop-up menu from a system tray icon. Responds to mouse click without needing a callback procedure, plus allows keyboard focus from a pop-up menu.

Properly erases the menu when the user clicks somewhere other than the pop-up menu. 

Special Instructions

Uses the following API functions:

  • CallNextHookEx
  • CopyMemory (RtlMoveMemory)
  • GetWindowThreadProcessID
  • Shell_NotifyIcon
  • SetForegroundWindow
  • SetWindowsHookEx
  • UnHookWindowsHookEx


This code originally appeared on, and has been republished here with the permission of Matt Hart.

About the Author

BlackBeltVB has posted a total of 89 articles.

Comments On This Post

No comments on this post yet!

Do you have a thought relating to this post? You can post your comment here. If you have an unrelated question, you can use the Q&A section to ask it.

Or you can drop a note to the administrators if you're not sure where you should post.

Your IP address is:

Before you can post, you need to prove you are human. If you log in, this test goes away.

Code Links