刷新任务栏因进程关闭而停留下来的图标
发布时间:2020-12-15 23:14:15 所属栏目:安全 来源:网络整理
导读:// 刷新任务栏图标 function RefreshTaskbarIcon: Integer; var hShellTrayWnd: HWND; // 任务栏窗口 hTrayNotifyWnd: HWND; // 任务栏右边托盘图标+时间区 hSysPager: HWND; // 不同系统可能有可能没有这层 hToolbarWindow32: HWND; // 托盘图标窗口 r: TRE
//刷新任务栏图标 function RefreshTaskbarIcon: Integer; var hShellTrayWnd: HWND; //任务栏窗口 hTrayNotifyWnd: HWND; //任务栏右边托盘图标+时间区 hSysPager: HWND; //不同系统可能有可能没有这层 hToolbarWindow32: HWND; //托盘图标窗口 r: TRECT; width,height: integer; x: Integer; begin hShellTrayWnd := FindWindow(‘Shell_TrayWnd‘,nil); hTrayNotifyWnd := FindWindowEx(hShellTrayWnd,0,‘TrayNotifyWnd‘,nil); hSysPager := FindWindowEx(hTrayNotifyWnd,‘SysPager‘,nil); if (hSysPager <> 0) then hToolbarWindow32 := FindWindowEx(hSysPager,‘ToolbarWindow32‘,nil) else hToolbarWindow32 := FindWindowEx(hTrayNotifyWnd,nil); if (hToolbarWindow32 <> 0) then begin GetWindowRect(hToolbarWindow32,r); width := r.right - r.left; height := r.bottom - r.top; //从任务栏中间从左到右 MOUSEMOVE一遍,所有图标状态会被更新 for x := 1 to width-1 do SendMessage(hToolbarWindow32,WM_MOUSEMOVE,0,MAKELPARAM(x,trunc(height/2))); end; end; --------------------- { 作者:lovewjp 来源:CSDN 原文:https://blog.csdn.net/lovewjp/article/details/44986437 版权声明:本文为博主原创文章,转载请附上博文链接! } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |