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

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

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);

你可能感兴趣的:(windows)