绿色版Notepad++才适合打包插件,需确保存在doLocalConf.xml、plugins目录、config目录及notepad++.exe,且架构一致;否则插件菜单可能消失或功能异常。

插件打包前先确认 Notepad++ 是绿色版还是安装版
打包插件的前提是:所有插件 DLL 和配置必须实际存在于你可控的目录里。安装版 Notepad++ 默认把插件放在 plugins 子目录,但配置文件(如 config.xml、shortcuts.xml)写在 %APPDATA%\Notepad++,这部分不会随程序目录一起复制——直接压缩 notepad++.exe 所在文件夹会漏掉关键配置。
绿色版(便携版)才真正适合打包:它默认把全部配置写入程序同级的 config 文件夹,并要求存在 doLocalConf.xml 这个开关文件。没有它,哪怕你解压的是绿色包,首次运行也会悄悄把配置写进 %APPDATA%,导致后续打包无效。
- 检查当前 Notepad++ 是否为真绿色版:打开其根目录,确认是否存在
doLocalConf.xml(空文件,扩展名不能是.xml.txt) - 若不存在,手动新建一个,否则打包后换机器运行,插件菜单可能消失、快捷键失效
- 绿色版的插件目录结构必须是:
plugins\Compare.dll、plugins\NppFTP\NppFTP.dll等,子目录命名需与插件规范一致
打包时必须包含的 4 类文件和路径
只复制 plugins 文件夹远远不够。一个可迁移、开箱即用的插件环境,需要这四类内容按固定相对路径组织:
-
notepad++.exe(主程序,32/64位必须与插件 DLL 一致) -
plugins\目录(含所有插件 DLL 及其子目录,如plugins\JSFormat\JSFormat.dll) -
config\目录(含config.xml、shortcuts.xml、langs.xml等,绿色版才有) -
doLocalConf.xml(强制启用本地配置的关键开关,缺了就变安装版行为)
注意:plugins\Config\ 是某些老插件存放自身配置的地方(如 NppFTP 的 Config\NppFTP.ini),这个路径也要保留,否则 FTP 账号等设置会丢失。
避免打包后插件不显示的三个典型原因
很多人打包完在另一台机器双击运行,发现插件菜单空空如也。最常见不是 DLL 缺失,而是以下三处错配:
-
notepad++.exe架构(32 位 vs 64 位)与插件 DLL 不匹配:64 位 Notepad++ 加载不了 32 位Compare.dll,也不会报错,只是静默忽略 - 插件 DLL 放错了位置:比如把
NppFTP.dll直接扔进plugins\,而它实际需要放在plugins\NppFTP\NppFTP.dll - 安全软件拦截或系统权限限制:尤其在 Windows Server 或企业域环境下,
plugins目录下的 DLL 可能被标记为“不受信任”,需右键属性 → 勾选“解除锁定”
验证方法:启动 Notepad++ 后,打开 插件 → Plugin Manager → Show Plugin Manager,如果该菜单项本身都不见,说明插件管理器没加载,大概率是架构不匹配或 PluginManager.dll 放错路径。
推荐的打包命令与校验方式
手动拖拽压缩容易遗漏隐藏文件或权限位。更可靠的做法是用命令行打包,并校验关键文件是否存在:
cd /d D:\my-npp-portable 7z a -tzip npp-env-20261019.zip notepad++.exe config\ plugins\ doLocalConf.xml
打包后,在目标机器解压前先做两件事:
- 用记事本打开
config\config.xml,搜索标签,确认里面列出了你装过的插件名(如Compare、NppFTP) - 用 PowerShell 检查 DLL 架构是否一致:
[System.Reflection.Assembly]::LoadFile("D:\npp\plugins\Compare.dll").FullName—— 若抛出异常,说明位数不兼容
真正容易被忽略的是:插件功能依赖主程序版本。比如 Emmet 插件在 Notepad++ v8.6+ 才支持完整 HTML5 缩写,如果你打包的是 v7.9 的环境,换到新机器上即使 DLL 正确,部分功能也会不可用。打包时务必记录主程序版本号。










