直接取消notepad++.exe的“以管理员身份运行”即可解决:右键notepad++.exe→属性→兼容性→取消勾选该选项→应用并确定,右键菜单立即恢复正常。

Notepad++ 报错 “ShellExecute failed (2)” 不是代码问题,而是 Windows 权限配置冲突——直接取消 notepad++.exe 的“以管理员身份运行”即可解决。
ShellExecute failed (2) 是什么错误
这个错误不是 Notepad++ 自身崩溃,也不是脚本语法出错,而是 Windows Shell 在尝试用右键菜单启动 Notepad++ 时被系统拦截。错误码 2 对应 Windows API 的 ERROR_FILE_NOT_FOUND,但实际含义在这里被误导了:它真正反映的是“当前用户权限无法按指定方式(管理员模式)启动该进程”。
- 触发场景固定:仅出现在右键菜单 → “Edit with Notepad++” 或类似上下文菜单项
- 和文件路径、编码、插件完全无关;哪怕打开一个空 txt 文件也会弹出
- Notepad++ 主界面能正常启动,说明安装和基础功能完好
为什么勾选“以管理员身份运行”会导致报错
Windows 对“右键菜单调用”和“桌面快捷方式启动”采用不同权限协商机制。当 notepad++.exe 被强制设为“以管理员身份运行”,系统会要求所有调用方(包括资源管理器的 shell 扩展)也具备管理员权限——而资源管理器默认以标准用户权限运行,于是 ShellExecute 直接失败,返回错误码 2。
- 该设置存在于文件属性 → 兼容性 → 勾选了
以管理员身份运行此程序 - 即使你没手动勾选,某些杀毒软件或部署脚本可能静默启用该选项
- 重启资源管理器(
taskkill /f /im explorer.exe && start explorer.exe)不能绕过,必须改回权限配置
修复步骤(三步到位)
不需要重装、不需改注册表、不需管理员密码——只需还原执行权限策略:
- 在文件资源管理器中找到
notepad++.exe(通常在C:\Program Files\Notepad++或C:\Users\{用户名}\AppData\Local\Programs\Notepad++) - 右键 →
属性→ 切换到兼容性选项卡 - 取消勾选
以管理员身份运行此程序→ 点击应用→确定
之后右键菜单立即恢复正常。如果仍无效,可尝试重启资源管理器或注销重登录——但绝大多数情况下,改完即生效。
容易被忽略的细节
这个错误只影响右键调用路径,不影响通过双击、快捷方式、命令行或 NppExec 插件运行脚本;但很多人误以为是插件损坏或 PATH 配置问题,反复折腾环境变量或重装插件,反而掩盖了真正的权限根源。



















