>我对 Windows 的这个设置很疑惑,有朋友讲讲吗?明明设置了默认应用,而且百度网盘并没有更改默认应用,却能让用户再选一遍?
古代的 Windows 里面,只要修改 HKCR\.mp3 的默认值,即可改变 .mp3 的关联。
从 Windows 8 开始,文件关联的选项位于 HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts 里,只有 Windows 本身的 UI 提供受支持的修改方式,即用户掌控文件关联的选项。同时:
1. 若有软件修改 FileExts ,则文件关联会重置为默认值,这样是为了让第三方软件没有动机劫持用户的文件关联。
2. 旧的修改方式不会导致重置,Windows 会借此意识到文件类型有新程序可以处理,并提示用户可以选择新处理程序。
第二点是至关重要的,因为普通用户可能不会主动修改文件关联,因此这是给每个新程序被发现的机会。同时:
3. 在 HKCU\Software\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts 里面会存储每个 ProdId 和扩展名是否尝试提示过用户了,ProgId 大概可以理解为“程序 A 可以处理类型 B”的信息(同一个扩展名可以有多个 ProgId 支持,同一个程序可以注册多个 ProgId )。
理论上来说在新程序安装之后遇到的那种“打开方式”对话框,应该每个类型只提示一次。我自己测试了一下新注册 ProgId ,会提示新程序,选择 Always 当然会改变文件关联,选择 Just once 的话,无论选择哪个程序,下次打开都不会再提示,并且文件关联还是原来的。
广告时间:
https://geelaw.blog/entries/windows-fileassoc-walkthru/————
结论:
- 百度网盘愿意注册音视频文件的类型,我觉得是中立评价。
- Windows 提示你选择文件关联,我觉得是正常的发现机制。
- 如果你确定百度网盘会导致 Windows 反复提示同一种文件的关联,并且不是因为你不断安装新程序,我觉得是百度网盘作怪(也可能是 Windows 的 bug ,但可能性比较低)。