🛡 以低权限账号安全运行批处理 · .NET Framework 4.5 · 免安装单文件

BAT卫士 BATGuard

一款面向运维场景的 Windows 批处理守护工具:把服务器上散落的 .bat / .cmd 纳入统一管理,以专用低权限账号运行,并提供开机自启、计划启动、守护重启、 输出日志捕获、目录授权等一站式能力,让批处理既省心又安全。

当前版本 v1.1.0 · 免安装单文件 · .NET Framework 4.5 · Windows 7 / Server 2008 及以上

低权限账号运行,风险最小化 开机自启 / 计划启动 / 守护重启 控制台输出完整捕获到日志 无需安装 .NET 运行时(系统自带)
BAT卫士 -- 智创思维工作室
BATGuard 主界面

功能特性

围绕“批处理运维”这一件事做深做透,能力分为安全、调度、日志三条主线。

🔐安全可控 把风险关进笼子

🛡

低权限账号运行

所有批处理以专用低权限本地账号(仅 Users 组权限)运行,脚本里的任何命令都无法获得管理员权限,误操作与安全风险降到最低。

🔑

目录授权

一键为批处理所在目录授予低权限账号完全控制权限(icacls,含子对象继承),支持“当前目录及子目录 / 上层目录”两种模式。

🖥

隐藏 / 显示窗口

可按批处理项选择隐藏窗口静默运行,或显示控制台窗口便于观察;隐藏窗口模式不弹黑框,适合服务器常驻任务。

⏰调度与守护 启动、定时、自动拉起

▶

启动 / 停止 / 重启

单个或全部一键启动、停止、重启;作业对象托管整棵进程树,停止时连带子进程一起结束,不留残留进程。

⏰

开机自启与计划启动

登录时自动启动指定批处理;还支持每天 / 每周指定星期 / 一次性 / 每隔 N 分钟四种计划触发方式(基于 Windows 计划任务)。

♻

守护重启

开启守护后,批处理进程意外退出会自动重新拉起,无需人工盯守,适合必须长期在线的后台任务。

📝日志与运维 全程可观测、状态不脱管

📝

输出日志捕获

实时捕获批处理的控制台输出,按天写入 Logs\批处理名\yyyy-MM-dd.log;界面日志面板按选中项过滤展示。

🔌

外部进程接管

在工具之外手动双击启动的批处理也会被自动发现并标记为“运行中(外部)”,同样接管其控制台输出到日志,状态不脱管。

💾

XML 配置与托盘

配置以 XML 明文存储(可备份、可手工编辑),自动维护备份并在损坏时恢复;关窗最小化到托盘,退出前确认运行中任务。

快速上手

从添加批处理到长期守护,五步完成。整个过程只需鼠标操作,无需写脚本、无需改系统配置。

以管理员身份运行 BATGuard

首次运行会弹出 UAC 提示,请选择“是”。程序需要管理员权限来创建低权限账号、执行 icacls 授权和创建计划任务(这些操作只做一次或按需执行)。

创建低权限账号(一次性)

首次启动会自动打开“低权限账号管理”,点击 创建 / 修复账号 即可,密码自动生成并加密保存,无需记忆。详见下方 低权限配置。

添加批处理

点击工具栏 + 添加批处理,或直接把 .bat / .cmd / .lnk / .exe 文件拖进窗口(.lnk 快捷方式会自动解析成目标程序)。

配置批处理项

双击表格行(或选中后点 ✎ 编辑)设置:开机自启、守护重启、运行窗口(隐藏/显示)、目录授权范围、启动模式、计划启动(每天 / 每周 / 一次 / 每隔 N 分钟)。

启动并查看日志

选中行点 ▶ 启动;点击日志面板自动按当前选中项过滤显示输出,点 📁 打开日志目录 可查看按天落盘的日志文件。表格中直接点击 开机自启 / 守护重启 / 运行窗口 / 计划启动 / 目录授权 / 启动模式 所在单元格,可免弹窗快速切换。

💡 提示:即使你绕过本工具、直接双击运行了某个批处理,BATGuard 也会自动发现它并标记为 “运行中(外部)”,同时接管控制台输出写入日志——状态永远不脱管。

🛡 低权限配置指南(重点)

直接以管理员身份运行批处理,意味着脚本里的每一行命令都拥有整台服务器的控制权——一旦脚本被篡改、 或命令写错路径,后果可能是灾难性的。BATGuard 的核心设计就是:把批处理关进“低权限账号”这个笼子里, 无论脚本内容如何,它能做的都被限制在普通用户权限之内。

一、为什么这样做是安全的

二、四步完成配置

打开“低权限账号管理”

点击状态栏右下角 低权限账号:● 未配置,或右键表格行 → 低权限账号管理…, 或托盘菜单同名项。首次启动检测到账号不存在时会自动弹出该窗口。

点击“创建 / 修复账号”

账号名默认 BatRunner(可改,须字母开头,仅字母/数字/下划线/连字符,≤20 位)。 点击后程序自动创建本地账号并生成随机密码、加密保存。账号已存在但异常时,同一按钮可用于修复。

执行“目录授权”

点击 为所有批处理目录授权,程序会按每个批处理项的授权模式 (当前目录及子目录 / 上层目录,在“编辑”对话框里设置)逐目录执行 icacls 完全控制授权。 忘了授权也没关系——启动批处理时会自动检测并补授权一次。

点击“测试登录”验证

用生成的账号密码做一次真实登录验证,通过即配置完成。之后启动任何批处理,都会以该账号身份运行。

⚠ 杀毒软件 / 安全软件提示:点击“创建 / 修复账号”或“重置密码”时,部分安全软件可能弹出拦截提示 (创建账号属于敏感操作)。请选择“允许”;若已被拦截导致失败,先在安全软件中放行本程序,再点击按钮重试即可。 失败原因会同时显示在窗口错误区和运行日志中。
✔ 密码丢了怎么办?不需要记忆密码。在账号管理界面点击“显示密码”即可查看,或“复制密码”一键复制; 也可以直接点“重置密码”重新生成。
低权限账号管理
低权限账号管理界面

▲ 低权限账号管理窗口

启动模式说明

启动模式说明
托管 ProcessStartInfo
默认 · 推荐
以凭据方式直接启动进程,实时捕获控制台输出到日志。绝大多数场景使用这一种即可。
计划任务 通过 Windows 计划任务以指定账号启动(备选方案)。由系统负责完整的用户环境初始化,输出经外部扫描接管。

两种模式都以外部分析扫描兜底:即使进程是由别的方式拉起的,只要命令行中包含该批处理路径,就会被接管并记录日志。

三、与低权限相关的批处理项设置

设置项(编辑对话框)选项说明
运行窗口隐藏窗口 / 显示窗口 隐藏窗口静默运行不弹黑框;显示窗口便于现场观察(输出同样写入日志)。
目录授权当前目录及子目录 / 上层目录 决定 icacls 授权的作用范围。批处理需要写上级目录文件时选“上层目录”。
启动模式托管 ProcessStartInfo / 计划任务 见上方“启动模式说明”。点击表格“启动模式”单元格可直接循环切换。
守护重启开 / 关 开启后进程意外退出自动重新以低权限账号拉起(3 秒后)。
💡 排查建议:所有启动行为都会记录在 Logs\_manager\ 管理器日志中,包含使用的启动模式、 账号、PID 与失败原因;批处理自身的输出在 Logs\批处理名\ 下按天存放。出问题时先看这两个日志,基本能定位到原因。

界面预览

主界面一站式管理所有批处理项;低权限账号管理独立成窗,创建账号、授权目录一目了然。以下按功能模块逐屏讲解。

1主界面总览 参考batmanager界面做的
BAT卫士 -- 智创思维工作室
主界面总览
工具栏添加 / 编辑 / 删除 / 启动 / 停止 / 重启 / 守护重启 / 打开日志目录等 12 个按钮,选中表格行后一键操作。
批处理表格状态、开机自启、运行窗口、守护重启、PID、计划启动、目录授权、启动模式,直接点击单元格即可免弹窗快速切换。
运行日志面板实时显示当前选中项的控制台输出,自动按选中项过滤,切换条目即切换日志。
状态栏右下角实时显示低权限账号状态(已配置 / 未配置)与运行中任务数量。
2添加批处理
添加批处理
添加批处理
两种添加入口点击工具栏「+ 添加批处理」,或直接把文件拖进主窗口即可。
支持的文件类型.bat / .cmd / .lnk / .exe,其中 .lnk 快捷方式会自动解析成目标程序路径。
即时生效添加后自动出现在列表,状态标记为「已停止」,随后即可配置并启动。
3编辑批处理对话框
编辑批处理
编辑批处理对话框
开机自启登录系统时自动启动该批处理(注册表启动项)。
守护重启进程意外退出 3 秒后自动重新以低权限账号拉起。
运行窗口「隐藏窗口」静默运行不弹黑框,「显示窗口」便于现场观察。
目录授权范围当前目录及子目录 / 上层目录,决定 icacls 授权作用范围。
启动模式托管 ProcessStartInfo(默认推荐)/ 计划任务(备选)。
计划启动点击进入计划启动设置,配置定时触发。
4计划启动设置
计划启动设置
计划启动设置
四种触发方式每天 / 每周指定星期 / 一次性 / 每隔 N 分钟。
基于计划任务由 Windows 计划任务负责调度,系统自动完成用户环境初始化。
静默入口计划启动带 --silent 参数,不弹主界面直接启动目标批处理。
5低权限账号管理
低权限账号管理
低权限账号管理
账号信息区账号名(默认 BatRunner)、账号是否存在、密码是否已保存、显示 / 复制密码。
执行前请注意橙色警示:创建 / 重置密码时杀毒软件可能拦截,请选择「允许」后重试。
三个操作按钮创建 / 修复账号(生成随机密码)、重置密码、测试登录(验证账号可用性)。
目录授权一键为所有批处理所在目录授予低权限账号完全控制权限(icacls,含子对象继承)。
6运行日志与日志目录
运行日志
运行日志与日志目录
按天落盘各批处理日志在 Logs\批处理名\yyyy-MM-dd.log,管理器事件日志在 Logs\_manager\。
打开日志目录点击工具栏「打开日志目录」快速定位到对应文件。
外部接管绕过工具手动双击启动的批处理,其输出同样被接管写入日志。
7托盘菜单与右键菜单
系统托盘 / 右键菜单
托盘菜单与右键菜单
最小化到托盘关闭主窗口不退出,最小化到系统托盘常驻。
托盘菜单显示主界面、低权限账号管理、退出。
退出确认退出前确认运行中任务,避免误关导致批处理中断。
右键表格行编辑、启动 / 停止、低权限账号管理等快捷入口。

进阶参考

面向自动化部署与运维排查的命令行参数、文件结构说明。

命令行参数

便于与其它调度系统集成、脚本化部署(单实例运行,重复启动时参数会自动转发给已运行的实例)。

参数作用
--boot开机自启入口(由“本程序开机自动启动”注册表项调用),启动后按设置最小化到托盘。
--silent计划启动入口(由计划任务调用),不弹主界面,直接启动目标批处理并最小化。
--autostart-item <id>启动指定 Id 的批处理项(配合 --boot / --silent 使用)。
--stop-item <id>停止指定 Id 的批处理项。
--add-item <path>添加一个批处理项(支持 .bat/.cmd/.lnk/.exe)。
--account启动后直接打开“低权限账号管理”。
--show让已运行的实例恢复主界面(无参数二次启动时自动附带)。

文件与目录说明

位置说明
%ProgramData%\BATGuard\config.xml主配置文件(XML 格式,可备份 / 手工编辑)。
%ProgramData%\BATGuard\config.bak.xml上一份良好配置的自动备份;主文件损坏时自动从备份恢复。
%ProgramData%\BATGuard\runner.dat低权限账号凭据(DPAPI 加密,仅本机可解)。
程序目录\Logs\批处理名\yyyy-MM-dd.log各批处理按天的运行日志。
程序目录\Logs\_manager\yyyy-MM-dd.log管理器自身事件日志(启动 / 停止 / 守护 / 授权等)。

常见问题

使用中遇到的高频问题与解决方法。

运行时弹出 UAC(用户账户控制)提示,正常吗?
正常。程序需要管理员权限来完成“创建低权限账号、icacls 授权、创建计划任务、以其他用户身份启动进程”这些一次性/按需操作,清单中已声明 requireAdministrator。日常的启动/停止/看日志不会反复弹窗。
杀毒软件报“创建账号”或拦截程序怎么办?
创建本地账号、以其他用户身份启动进程属于敏感操作,部分安全软件会提示。选择“允许”即可;若已拦截导致失败,先在安全软件中放行本程序,再重试对应按钮。失败原因会显示在账号管理窗口底部并写入日志。
启动失败,提示“低权限账号未配置”?
说明还没有创建低权限账号。点击状态栏的“低权限账号:● 未配置”打开管理界面,先执行“创建 / 修复账号”,再回到列表启动即可。程序不会在启动时自动替你创建账号。
启动日志里出现 WMI / wminet_utils.dll 报错,影响使用吗?
不影响。程序用 WMI 查询外部 cmd.exe 进程以实现“外部接管”;个别老系统该组件不可用时,程序会自动切换到 PowerShell CIM 方式查询(仅提示一次),功能完全不受影响。
批处理需要交互输入(pause / choice 等)怎么办?
隐藏窗口模式下没有交互输入通道,含 pause 的脚本会停在那里等待。建议:服务类脚本去掉交互命令;确需交互的场景改用“显示窗口”模式运行。
我想临时手动双击运行某个批处理,可以吗?
可以。外部启动的批处理会被自动识别为“运行中(外部)”,工具会接管它的控制台输出写入日志;之后你也可以直接在工具里“停止”它(按进程树结束)。
配置丢了 / 文件损坏怎么办?
程序每次保存都会同步维护上一份良好备份 config.bak.xml;主文件损坏时启动会自动改名保留现场(config.corrupt-时间戳.xml)并从备份恢复,同时弹窗告知。也建议定期备份 %ProgramData%\BATGuard 目录。
对系统有什么要求?
Windows 7/Server 2008 及以上(基于 .NET Framework 4.5,Win8/Server 2012/Win10/Server 2016+ 系统自带,无需安装任何运行时)。单文件绿色运行,不写注册表、不装服务(计划任务除外,卸载时可在任务计划程序中删除 BATGuard 开头的任务)。

关于我 / 联系方式

智创思维工作室 —— 专注企业级用友生态产品与解决方案。

🏢 智创思维工作室

我们长期深耕用友 BIP / NC / NCC 生态,提供成熟商业产品与企业定制开发服务。除本工具外,目前在售产品包括:

  • 银企直联企业与银行系统直联支付 / 回单解决方案,安全对接各大银企通道。
  • BIP 移动审批端用友 BIP 移动审批,随时随地处理审批流。
  • BIP 的 CA 系统电子签章 / CA 认证集成,让单据签署合规可信。
  • BIP / NC / NCC 二次开发承接用友产品二开:单据定制、接口集成、流程改造、报表开发等。

📞 联系我们

产品咨询、试用、定制开发,欢迎电话或微信联系(同号):

📱 联系电话 / 微信:17382088059
⬇ BAT卫士(用友[BIP/NC/NCC]专版)下载

也欢迎提出对本工具的功能建议与问题反馈,我们持续迭代。

本工具免费提供内部使用;商业项目中的批量部署与定制需求,欢迎洽谈。

↑