TrayMenu is a custom control for use in any of your projects. It allows you to easily create a system tray icon with an associated menu.


  • Adds an icon to the system tray.
  • Automatically handles the tracking of tray menus when user right clicks on the system tray icon.
  • Allows you to specify if main window of your application is hidden when minimized.
  • Specify if your application minimizes to the system tray when the close button is clicked.
  • Restores the main application window if user left clicks on system tray icon.
  • Dynamic creation of menu via provided macros or assign a menu created by the standard win32 api function CreatePopupMenu.
  • Easily create balloon style notifications for your TrayMenu icon.

TrayMenu Control Downloads

  • TrayMenu Control Downloads + Version:1.0 (2017-01-31) File size: 71.52 KB Version: (2016-03-15) File size: 135.75 KB
    TrayMenu Readme.txt Version: (2016-03-15) File size: 5.04 KB (2016-03-15) File size: 49.86 KB
    TrayMenu.chm Version: (2016-03-15) File size: 91.23 KB


    Note: you may need to unblock access to a file once you download it. Right click on it in windows explorer, select properties, click the unblock button.

  • TrayMenu Control History +


    • Rewrote and refactored TrayIcon library as TrayMenu control, integrating subclassing to handle menu tracking etc.
    • Updated documentation to reflect new functions, and added examples to most of the functions and messages.
    • Added RadASM example projects.


    • Release - First release of TrayMenu Control.
  • 1

TrayMenu Control Information

  • TrayMenu Control Notes +

    The latest version of TrayMenu Control is v1.0.0.1

    TrayMenu Control is desgined for use with:

    • RadASM IDE
    • MASM32 SDK
  • TrayMenu Control Setup +

    Copy TrayMenu control files to your the MASM32 folders

    • TrayMenu.lib to \masm32\lib
    • to \masm32\include

    Include TrayMenu control in your project somewhere with:

    Includelib TrayMenu.lib

    For detailed examples of usage see the examples in the help documentation or see the examples: TMExample1 and TMExample2

    Prepare menu for use with the TrayMenu control:

    Invoke CreatePopupMenu mov hMenuForTrayMenu, eax

    Prepare icon for use with the TrayMenu control:

    Invoke LoadIcon, hInstance, ICO_TRAY
    mov hIcoTray, eax

    Create a TrayMenu control:

    Invoke TrayMenuCreate, hWin, hIcoTray, lpszTrayMenuTooltip, TRAYMENU_POPOP, hMenuForTrayMenu, TMO_MINONCLOSE + TMO_HIDEIFMIN
    mov hTM, eax ; save handle
  • 1

Login Form