来自问题频道的问题:Mhlink 替换 notepad 为 notepad3 问题,大意就是需要替换掉 Windows 默认的记事本工具,使用 Notepad3 来当作默认记事本。@Appinn

如何替代 Windows 默认记事本(Notepad)为第三方工具

青小蛙在前阵子还推荐过:用轻量级工具 Notepad3 替代 36 岁的微软记事本,但当时并没有解决默认记事本的问题。

@ldtwh01 同学的具体问题是这样的:

事情的起因是:

  1. 因为最近在写一点批处理,所以不满足于功能过于简单的 Notepad,所以想用 Notepad3 替代之;
  2. 因为最近系统重装比较频繁,每次装软件并调整软件设置的过程让人吐血,所以想用软件的官方免安装版替代之;
  3. 发现不少软件的免安装版不提供文件关联功能,在 Win10 系统只能每种文件类型通过右键“打开方式”菜单选择程序来关联(是每种扩展名设一次…心塞)。

所以,我突发奇想:能否删除系统自带组件,然后用 mhlink 文件连接命令原地建立一个同名链接指向第三方免安装软件,可行的话上面的三条问题都解决了。

但失败了…


不过很快 @kli2018 同学解决了此问题:

硬链接替代的时候,Notepad3 的其他部分,比如语言文件夹和配置都要硬链接一份,最安全的还是映像劫持,微软官方教的:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe

新建名字叫 Debugger 的字符串,双击修改为 Notepad3 的路径,这种什么都不需要改变。

青小蛙也研究了一下,的确算是最方便的解决方案了,只需要使用管理员权限的命令提示符运行两句:

reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe" /v GlobalFlag /t REG_DWORD /d 512
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe" /v Debugger /t REG_SZ /d "C:\Appinn-Tools\Notepad3\Notepad3.exe"

注意第二行里面的 C:\Appinn-Tools\Notepad3\Notepad3.exe 换成你自己的路径。也可以自己定位注册表手动添加:

如何替代 Windows 默认记事本(Notepad)为第三方工具 1

验证是否成功:只想在「运行」里输入 noetpad 回车,看看打开的是不是 Notepad3 就可以了。

在注册表的 Image File Execution Options 里面还有其他一些应用,也可以用此方式来修改默认应用。


当然对于完全不想自己折腾的同学,也有一个叫做 Notepad Replacer 的免费工具,帮你修改注册表(原理相同),只不过更简单:

如何替代 Windows 默认记事本(Notepad)为第三方工具 2

注意,Windows 11 使用 Notepad 预览版的同学,这个操作之后需要重新安装才能继续使用预览版记事本。

那么问题来了,排除 VS Code 这一类大型工具,你在什么记事本工具呢?

原文:https://xbcpy.com/