精易论坛

标题: windows 防火墙断网 断单独程序不成功。 [打印本页]

作者: 万古一念间    时间: 2025-2-27 15:38
标题: windows 防火墙断网 断单独程序不成功。
借鉴论坛大佬代码,不知道哪里问题,求指教。

Win_本地防火墙_操作类_精易论坛


  
子程序名返回值类型公开备 注
_按钮3_被单击  
变量名类 型静态数组备 注
bool逻辑型 
bool = 真
win.开启防火墙 (bool, bool, bool)
win.更改通知 (bool, bool, bool, bool)
win.添规则 (“指定断网”, “介绍...”, , , , , , , )
防火墙 = win.读指定名称规则 (“指定断网”)
防火墙.规则描述 = “这是一首简单的小情歌”
防火墙.应用程序名 = “D:\leidian\LDPlayer9\dnplayer.exe”
防火墙.方向 = 1
防火墙.是否启用 = 真
防火墙.分组 = “000_家庭组输入”
防火墙.操作 = 0
防火墙.
' //....以此类推
win.改指定名称规则 (“ 指定断网”, 防火墙)
防火墙 = win.读指定名称规则 (“指定断网”)
调试输出 ( #换行符“规则名称:” + 防火墙.规则名称 + #换行符, “规则描述:” + 防火墙.规则描述 + #换行符, “应用程序名:” + 防火墙.应用程序名 + #换行符, “服务名称:” + 防火墙.服务名称 + #换行符, “协议类型:”到文本 (防火墙.协议类型)#换行符, “本地端口:” + 防火墙.本地端口 + #换行符, “远程端口:” + 防火墙.远程端口 + #换行符, “本地地址:” + 防火墙.本地地址 + #换行符, “远程地址:” + 防火墙.远程地址 + #换行符, “Icmp类型和代码:” + 防火墙.Icmp类型和代码 + #换行符, “方向:”到文本 (防火墙.方向)#换行符, “接口:” + 防火墙.接口.取文本 ()#换行符, “接口类型:” + 防火墙.接口类型 + #换行符, “是否启用:”到文本 (防火墙.是否启用)#换行符, “分组:” + 防火墙.分组 + #换行符, “配置文件:”到文本 (防火墙.配置文件)#换行符, “EdgeTraversal:”到文本 (防火墙.EdgeTraversal)#换行符, “操作:”到文本 (防火墙.操作)#换行符, “EdgeTraversalOptions:”到文本 (防火墙.EdgeTraversalOptions)#换行符 )
win.删规则 (“指定断网”)
win.恢复本地防火墙默认值 ()
bool = 假
win.更改通知 (bool, bool, bool, bool)
win.开启防火墙 (bool, bool, bool)


i支持库列表   支持库注释   
spec特殊功能支持库



win防火墙指定断网.e (979.79 KB, 下载次数: 7)

作者: 万古一念间    时间: 2025-2-27 17:41
   
作者: 算法艺术家    时间: 2025-2-27 20:44
没用过那个类,这个是简易写法 你试试好使不
  
子程序名返回值类型公开备 注
防火墙软件规则操作 软件禁止联网为出站
参数名类 型参考可空数组备 注
规则名称文本型比如禁用多个端口用不同规则名称
软件路径文本型
动作类型整数型1添加禁止软件联网规则 2修改联网规则为允许 3删除规则
变量名类 型静态数组备 注
动作命令文本型 
运行 (“netsh advfirewall set allprofiles state on”, 真, #隐藏窗口 )  ' 必须打开防火墙服务
如果真 (动作类型 = 1)
运行 (“netsh advfirewall firewall add rule name=”#引号 + 规则名称 + #引号“ dir=out action=block program=”#引号 + 软件路径 + #引号, 假, #隐藏窗口 )
如果真 (动作类型 = 2)
运行 (“netsh advfirewall firewall set rule name=”#引号 + 规则名称 + #引号“ new action=allow”, 假, #隐藏窗口 )
如果真 (动作类型 = 3)
运行 (“netsh advfirewall firewall delete rule name=”#引号 + 规则名称 + #引号, 假, #隐藏窗口 )

' netsh advfirewall firewall add rule name="mytest_app" program="C:\myapp.exe" dir=out action=block
' netsh advfirewall firewall set rule name="mytest_app" new action=allow
' netsh advfirewall firewall delete rule name="Block Software"



作者: 万古一念间    时间: 2025-2-27 22:43
算法艺术家 发表于 2025-2-27 20:44
没用过那个类,这个是简易写法 你试试好使不
[e=3].版本 2

谢谢 测的不行~~




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4