Repository navigation
FileRemarks v1.14 — Shift+F2 快捷键 + 修好覆盖安装
FileRemarks v1.14
本次改动
1. 快捷键改成 Shift+F2
在资源管理器里选中一个文件,按 Shift+F2 直接弹出它的备注窗口。
- 只注册一个普通组合键(
RegisterHotKey(MOD_SHIFT | MOD_NOREPEAT, VK_F2)),没有键盘钩子、不拦截、不模拟按键。 - 常驻进程
FileRemarksHotkey.exe开机自启(HKCU\Software\Microsoft\Windows\CurrentVersion\Run),单实例。 - 没选中文件时什么也不做,不会乱猜路径;多选时只取第一个(本工具不做批量)。
2. 修好「覆盖安装」
以前的症状:已经装过之后再运行安装包、点「重新安装」,会弹出
无法替换正在使用的文件:
C:\Users\<你>\AppData\Local\FileRemarks\FileRemarksPropHandler.dll
错误码 0x00000005 / 0x00000005
请先注销或重启电脑,再运行本安装程序。
只能先卸载再重装。
根因:FileRemarksPropHandler.dll 被 explorer.exe 加载着。正在使用的映像既不能覆盖,也不能改名——所以「先把旧文件改名成 .old 再写新文件」的补救对加载中的 DLL 无效。
修法:改成按版本目录安装。
%LOCALAPPDATA%\FileRemarks\
├── FileRemarksSetup.exe ← 卸载器(固定路径)
├── app-1.14\ ← 本次安装的程序
│ ├── FileRemarksEditor.exe
│ ├── FileRemarksHotkey.exe
│ ├── FileRemarksPropHandler.dll
│ └── FileRemarksShellExt.dll
└── app-1.14-2\ ← 同版本再装一次就换到这里
同版本重复安装会继续退让成 app-1.14-2、app-1.14-3…,注册项始终指向最新目录,旧目录在下次启动时删除。
于是安装过程永远不碰正在使用的文件:覆盖安装不再需要重启,也不再需要先卸载。
装完之后资源管理器里生效仍然需要重启一次资源管理器(或注销重登录)——这是 Windows 对已加载 shell 扩展的固有行为,和「能不能装」是两件事。
安装
- 下载
FileRemarks_Setup_v1.14.exe,双击。 - 窗口里会显示
当前已安装版本和要安装的版本。 - 点「重新安装」/「安装」。
- 不需要管理员权限,不会弹 UAC,也不会弹 SmartScreen「发行者未知」。
卸载:同一个 exe,点「卸载」。
从旧版本升级
v1.13 及更早装在 %LOCALAPPDATA%\FileRemarks\ 根目录(扁平布局),v1.14 开始用版本目录。
两者可以共存;装完 v1.14 后旧文件会在下次启动时清掉。
v1.8 及更早是机器级安装(C:\Program Files\FileRemarks),需要管理员权限才能删,安装器会在完成提示里提醒。
仍然只对 NTFS 有效
备注存在文件的 NTFS 附加数据流里(<文件>:remark),文件改名/移动(同一分区内)备注跟着走。
FAT32/exFAT 盘、以及部分网络位置不支持附加数据流,那些地方的备注会保存失败并给出提示。
从源码构建
见仓库里的 README.md「自己编译」一节:需要 MinGW-w64(g++ 支持 C++17)。
校验
sha256 见下方 release 资产