按住shift双击启动可进入安全模式验证插件问题:若能正常打开且插件菜单为空,即确认为插件层故障;此时应重命名plugins目录,逐个移入子目录排查,并确保dll位数(amd64/intel 386)与notepad++进程名(notepad++64.exe/notepad++.exe)严格匹配。

按住 Shift 启动进安全模式,确认是不是插件问题
Notepad++ 一闪而过、任务管理器里 notepad++.exe 或 notepad++64.exe 进程刚出现就消失——这不是崩溃日志没弹出来,而是插件加载失败触发的静默退出。Windows ABI 不匹配(比如 64 位主程序加载 32 位 DLL)时,连错误窗口都不会显示。
验证方法极简单:按住 Shift 键双击图标启动。能正常打开、菜单栏「插件」为空、且没有「Plugin Admin」选项,就坐实了是插件层导致的问题。
注意:插件 → 插件管理 → 禁用全部 在闪退场景下完全无效——GUI 都没起来,这步根本执行不了。
重命名 plugins 目录,逐个移回子目录定位问题插件
安全模式能进,说明主程序和配置没问题,问题一定在 plugins 目录里。别删配置、别重装,直接动手排查:
- 把
%PROGRAMFILES%\Notepad++\plugins\(系统安装版)或~/.notepad++/plugins/(便携版)整体重命名为plugins.bak - 新建空的
plugins文件夹,重启 Notepad++(不用 Shift)——此时应能正常启动 - 从
plugins.bak里,每次只复制一个**子目录**(不是单个 DLL!)到新的plugins中,每放一个就重启测试一次 - 一旦闪退,立刻停手,刚移入的那个子目录就是问题源
特别留意:有些插件会自带多个 DLL(如 PythonScript.dll 和 PythonScript_v2.dll),共存就会冲突;还有 PluginManager.dll 和 PluginAdmin.dll 绝对不能同时存在——前者只适用于 ≤7.9 版本,后者才是 v8.0+ 官方组件。
检查 DLL 架构是否与 Notepad++ 严格匹配
很多闪退根本没报错,但根源就一个:位数不对。64 位 notepad++64.exe 加载 32 位 DLL,或反过来,都会被 Windows 直接拒载。
确认方式:
- 任务管理器 → 「详细信息」页 → 启动 Notepad++,看进程名是
notepad++.exe(32 位)还是notepad++64.exe(64 位) - 去「帮助 → 关于 Notepad++」右下角确认标注的是
32-bit还是64-bit - 用
Dependencies.exe(v1.14+)打开你的插件 DLL,看「Machine Type」字段:必须是AMD64(对应 64 位)或Intel 386(对应 32 位)
别信文件名带 x64 的包——实际架构得看二进制头。GitHub Release 页面下载时,认准带 -x64 或 -x86 后缀的压缩包。
插件目录结构错误也会导致静默失效
即使 DLL 位数正确、版本兼容,放错位置照样不加载。Notepad++ 对路径要求极其严格:
- DLL 必须放在**同名子目录**下:
JSONViewer.dll就得放在plugins\JSONViewer\JSONViewer.dll,而不是plugins\JSONViewer.dll或plugins\JSONViewer\libs\JSONViewer.dll - 子目录名必须与 DLL 主文件名**完全一致**(不含扩展名),大小写敏感:比如
NppFTP.dll→ 目录名必须是NppFTP,不能是nppftp或NppFtp - 路径中含中文、空格或特殊字符(尤其在旧逻辑下)可能触发 Unicode 解析失败,建议整个
plugins路径保持纯英文、无空格 - 便携版和安装版路径不能混用:便携版插件必须放在其同级
plugins文件夹里,不是C:\Program Files\Notepad++\plugins\
最容易被忽略的一点:部分插件(如 HexEditor)还依赖同目录下的 locale 子文件夹,缺失会导致 Failed to load plugin 报错,但未必弹窗提示。











