找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
楼主: 呵呵仙

[BUG提交] 这是BUG吗?EXE在遇到需要计算时间长时,任务栏的图标失效了?

[复制链接]

47

主题

190

回帖

1145

积分

金牌会员

积分
1145
 楼主| 发表于 2025-4-7 00:51:22 | 显示全部楼层

好像线程内,每秒修改图标可以解决,就是不知是否会有安全风险?



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

47

主题

190

回帖

1145

积分

金牌会员

积分
1145
 楼主| 发表于 2025-4-7 00:53:44 | 显示全部楼层
本帖最后由 呵呵仙 于 2025-4-7 01:00 编辑

#include <windows.h>

void RefreshTaskbarIcon(HWND hwnd, HICON hNewIcon) {
    // 设置窗口的大图标和小图标
    SendMessage(hwnd, WM_SETICON, ICON_BIG, (LPARAM)hNewIcon);
    SendMessage(hwnd, WM_SETICON, ICON_SMALL, (LPARAM)hNewIcon);

    // 强制窗口框架刷新,通知任务栏更新
    SetWindowPos(hwnd, NULL, 0, 0, 0, 0,
                 SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED);
}

//不用加SetWindowPos也可以!!

68

主题

369

回帖

1635

积分

管理员

积分
1635
发表于 2025-4-7 01:04:32 | 显示全部楼层
在主线程 设置不可以么?
是不是因为没有系统 标题栏, 所以系统没刷新, 系统BUG

47

主题

190

回帖

1145

积分

金牌会员

积分
1145
 楼主| 发表于 2025-4-7 08:41:13 | 显示全部楼层
本帖最后由 呵呵仙 于 2025-4-7 08:56 编辑
admin 发表于 2025-4-7 01:04
在主线程 设置不可以么?
是不是因为没有系统 标题栏, 所以系统没刷新, 系统BUG ...

好的,可以在某事件加入    SendMessage(hwnd, WM_SETICON, ICON_BIG, (LPARAM)hNewIcon);
    SendMessage(hwnd, WM_SETICON, ICON_SMALL, (LPARAM)hNewIcon);好点.

47

主题

190

回帖

1145

积分

金牌会员

积分
1145
 楼主| 发表于 2025-4-7 12:23:53 | 显示全部楼层
admin 发表于 2025-4-7 01:04
在主线程 设置不可以么?
是不是因为没有系统 标题栏, 所以系统没刷新, 系统BUG ...





启动窗口_开始绘制事件下,重画一次图标就OK了!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

68

主题

369

回帖

1635

积分

管理员

积分
1635
发表于 2025-4-7 20:49:18 | 显示全部楼层
为什么不在 窗口显示 函数返回后 设置呢

47

主题

190

回帖

1145

积分

金牌会员

积分
1145
 楼主| 发表于 2025-4-7 22:43:01 | 显示全部楼层
admin 发表于 2025-4-7 20:49
为什么不在 窗口显示 函数返回后 设置呢

是的.在入口,加一行代码就完美解决了!
https://bbs.125.la/thread-14852961-1-1.html
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|炫语言 | 炫彩界面库 | 用户所需, 正是我所做! ( 鄂ICP备2023014763号-1 )

GMT+8, 2025-5-24 02:09 , Processed in 0.081276 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表