You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows Defender拦截自研BAT文件编辑,如何配置解决?

问题

每次右键点击自研的.BAT文件选择“编辑”(已通过注册表将.bat的“编辑”操作关联到Notepad++),仅打开编辑而非运行时,都会弹出“Windows保护你的PC”提示,显示“阻止了未识别应用启动”。不想全局禁用Windows Defender,也不想为每个项目单独配置,该怎么解决?

问题根源

看你提供的Notepad安装脚本,问题出在你创建了一个未签名的edit.bat脚本,并把它关联成了编辑操作的启动程序。Windows Defender会拦截未签名的批处理文件启动,哪怕你只是想用它来打开Notepad编辑其他文件,系统也会把这个edit.bat当成待启动的“未识别应用”,从而弹出警告。

具体是这段代码导致的:

with open(t.BinPath + r'\edit.bat', "w") as ed:
    ed.write(r'@start /b "" "' + 'notepad++' + r'" %1 %2 %3 %4 %5 %6 %7 %8 %9')

你生成的这个edit.bat没有数字签名,Windows会对这类用户自建批处理的启动行为进行拦截,这就是弹窗的核心原因。

解决方法

直接把.bat文件的“编辑”操作关联到Notepad++主程序,跳过中间的edit.bat中转脚本即可。

步骤1:清理无用的edit.bat

直接删除你创建的这个批处理文件,它完全是多余的中转环节。

步骤2:修改.bat的编辑关联

命令行方式

打开管理员命令提示符,执行以下命令(替换{Notepad++实际路径}为你的Notepad++安装路径,比如C:\Program Files\Notepad++\notepad++.exe):

reg add "HKCR\batfile\shell\edit\command" /ve /d "\"{Notepad++实际路径}\" \"%1\"" /f

手动修改注册表方式

  1. 按下Win+R输入regedit打开注册表编辑器
  2. 定位到路径HKEY_CLASSES_ROOT\batfile\shell\edit\command
  3. 将默认值修改为"C:\Program Files\Notepad++\notepad++.exe" "%1"(替换成你的实际安装路径)

步骤3:验证

右键点击任意.bat文件选择“编辑”,应该直接启动Notepad++,且不会再弹出Windows Defender的拦截提示。

另外,你安装脚本里的其他关联设置(比如txt文件、无扩展名文件)都是正常的,只需要修正batfile的编辑关联即可。


内容的提问来源于stack exchange,提问作者nerdfever.com

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 22:55:48