C#(VB.NET)操作Windows自带的防火墙 之 添加/删除允许通过防火墙的例外程序

前面几篇,说了对防火墙的部分操作,今天说 如何 添加删除 允许通过防火墙的程序进入例外列表

本篇,我们用到了COM引用,因为不使用COM引用的话,操作太过繁琐了

一、 添加 COM 引用

在引用里,选择 COM 页, 找到 NetFwTypeLib , 确定即可

二、 引入命名空间

using NetFwTypeLib;

三、 添加允许通过防火墙的例外程序

//创建firewall管理类的实例
INetFwMgr netFwMgr = (INetFwMgr)Activator.CreateInstance(Type.GetTypeFromProgID("HNetCfg.FwMgr"));

//创建一个认证程序类的实例
INetFwAuthorizedApplication app = (INetFwAuthorizedApplication)Activator.CreateInstance(
    Type.GetTypeFromProgID("HNetCfg.FwAuthorizedApplication"));

//在例外列表里,程序显示的名称
app.Name = "自定义"; 

//程序的决定路径,这里使用程序本身
app.ProcessImageFileName = Application.ExecutablePath;

//是否启用该规则
app.Enabled = true;

//加入到防火墙的管理策略
netFwMgr.LocalPolicy.CurrentProfile.AuthorizedApplications.Add(app);

四、删除一个例外 列表 里的程序

INetFwMgr netFwMgr = (INetFwMgr)Activator.CreateInstance(Type.GetTypeFromProgID("HNetCfg.FwMgr"));
//参数为程序的绝对路径
netFwMgr.LocalPolicy.CurrentProfile.AuthorizedApplications.Remove(Application.ExecutablePath);
posted @   三角猫  阅读(1606)  评论(1编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示