After Win11 22H2, it is no longer possible to use TB-BUTTONCOUNT to obtain any information about the system tray. Microsoft has rewritten the taskbar UI using Xaml. I tried to find a new solution, and then I noticed in the registry that the value key “UIOrderList” in the “HKEY-CURRENT-USERControl PanelNotifyIconSettings” path may be related to the order of icons. When I manually drag the icon, this data is changed. I tried to modify the list, but obviously Explorer will not immediately be aware of the changes here (it will take effect after restarting Explorer). What is the way to make it take effect immediately? I tried stack tracing and debugging to find that the module for modifying the registry is Taskbar.dll located in the System32 directory. Any assistance in reverse engineering will be effective, thank you, anyone.
enter image description here
The “UIOrderList” structure contains 8-byte aligned TRAYNOTIFYICONIDs (little-endian), which correspond to the sub key names (in this case, decimal values) in the “HKEY-CURRENT-USERControl PanelNotifyIconSettings” path, representing the order of different icons.
enter image description here
Expect to analyze the solution to the problem from the perspective of message processing or reverse engineering of the Taskbar.dll module.
user25096530 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.