docs.rs failed to build systray-util-0.0.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
systray-util
A library for Windows 10 and 11 for monitoring and interacting with native system tray icons.
Example usage
Technical overview
Uses a "spy" window that intercepts system tray messages directed to Shell_TrayWnd. This is done by creating a hidden window with the same class name as Shell_TrayWnd and processing WM_COPYDATA messages that contain tray icon data (additions, updates, removals).
When a 3rd-party application uses Shell_NotifyIcon to add, update, or remove a tray icon, the code inside Shell32.dll sends a WM_COPYDATA message to the Windows taskbar window. It does this by calling FindWindow and looking for a window with the class name of Shell_TrayWnd.
WM_COPYDATA messages
1: Appbar messages. Invoked viaSHAppBarMessage.- Affects the position of shell flyouts (e.g. volume and wifi flyouts) and fullscreen behavior of windows.
2: Tray update messages: tray icon additions, updates, and removals. Invoked viaShell_NotifyIcon.- Necessary for detection of tray icons.
3: Icon position requests. Invoked viaShell_NotifyIconGetRect.- Affects the position of dropdowns for some tray icons (e.g. OneDrive).