3.2 KiB
3.2 KiB
U-Desk 图标更换指南
最后更新:2026-04-15
图标文件体系
U-Desk 有 3 层图标,Wails v2 的主图标源是 build/appicon.png,不是 build/windows/icon.ico。
| 文件 | 用途 | Wails 是否使用 |
|---|---|---|
build/appicon.png (256×256) |
唯一图标源 — Wails 构建时自动生成 ICO 嵌入 exe | ✅ 是 |
build/windows/icon.ico |
Windows 平台资源(被 appicon.png 覆盖) | ❌ 不直接使用 |
build/windows/app-icon.png |
Windows 目录副本 | ❌ 不使用 |
docs/08-用户指南/u-desk-site/og-image.png |
网站品牌图标 / PWA 图标 | 独立,需手动上传 |
更换步骤
1. 准备源图
准备 PNG 图片,用 Go 工具压缩并生成多尺寸 ICO:
// build/windows/convert_ico.go (用完即删)
// 功能: 读取任意尺寸 PNG → 压缩到 256×256 → 输出 6尺寸 ICO + appicon.png
// go run convert_ico.go
输出:
build/appicon.png— 256×256 压缩后(~35KB)build/windows/icon.ico— 6尺寸 ICO(~53KB)
2. 同步到所有位置
cp build/appicon.png build/windows/app-icon.png
cp build/appicon.png docs/08-用户指南/u-desk-site/og-image.png
3. 构建
wails build # 必须用 wails build,不能用 go build
4. 替换桌面 exe
桌面上的 u-desk.exe 是旧 exe 的副本(不是快捷方式),需手动替换:
cp build/bin/u-desk.exe ~/Desktop/u-desk.exe
5. 上传网站 logo
scp docs/08-用户指南/u-desk-site/og-image.png root@39.99.243.191:/var/www/u-desk-site/
6. 刷新 Windows 图标缓存
# 删除缓存文件
rm -f ~/AppData/Local/IconCache.db
rm -f ~/AppData/Local/Microsoft/Windows/Explorer/iconcache_*.db
rm -f ~/AppData/Local/Microsoft/Windows/Explorer/thumbcache_*.db
# 重启资源管理器
taskkill //F //IM explorer.exe && start explorer.exe
踩坑记录
坑 1: 改了 icon.ico 但 exe 里还是旧图标
原因: Wails v2 以 build/appicon.png 为唯一图标源,构建时忽略 build/windows/icon.ico。
解决: 必须更新 build/appicon.png。
坑 2: PowerShell System.Drawing 不可靠
原因: Windows 上 Assembly 加载问题,Drawing2D 类型解析失败。
解决: 用 Go 标准库 (image/png) 写转换工具,简单可靠。
坑 3: 桌面图标不更新
原因: 用户桌面上放的是旧 exe 的副本 (~/Desktop/u-desk.exe),不是快捷方式 (.lnk)。
解决: 直接 cp 新exe ~/Desktop/u-desk.exe 覆盖。
坑 4: Windows 图标缓存顽固
即使替换了文件,Windows 可能仍显示旧图标。
解决: 删除 IconCache.db + iconcache_.db + thumbcache_.db,然后重启资源管理器。最彻底的方式是重启电脑。
坑 5: 源图尺寸过大
微信图片通常 1000+ 像素、300+ KB,直接使用会导致嵌入 exe 后体积膨胀。
解决: 先用 Go 缩放到 256×256 再生成各尺寸。效果:351KB → appicon.png 35KB,ICO 总计 53KB。
EXE 内嵌图标大小参考
| 尺寸 | 大小 |
|---|---|
| 256×256 | ~58 KB |
| 128×128 | ~18 KB |
| 64×64 | ~5 KB |
| 48×48 | ~3 KB |
| 32×32 | ~1.6 KB |
| 16×16 | ~3 KB |
| 合计 | ~89 KB (占 EXE 0.25%) |