@Echo Off
chcp 936
SetLocal EnableDelayedExpansion
echo 正在以当前权限运行防火墙规则创建。..
echo 如果看不到完整规则,请尝试以管理员身份运行
echo:
Set "Cmnd=netsh advfirewall firewall add rule action=block"
Set "TargetDir=E:\Games\CrackedGame"
For /R "%TargetDir%" %%a In (*.exe) Do (
For %%b In (in out) Do (
set "ruleName=blocked %%~fa %%b"
netsh advfirewall firewall show rule name="!ruleName!" >nul 2>&1
if !errorlevel! equ 0 (
echo 跳过已存在的规则【%%~fa】方向:%%b
) else (
echo 创建禁止 %%b 规则【%%~fa】
%Cmnd% name="!ruleName!" dir=%%b program="%%a"
if !errorlevel! equ 0 (
echo -- 成功创建规则:!ruleName!
) else (
echo -- 创建规则失败,请检查权限
)
)
)
)
echo:
echo 处理完成
echo ----------------------------
pause