`
zu14
  • 浏览: 444924 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类

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

阅读更多

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

<script type="text/javascript"><!-- google_ad_client = "pub-5834986413902221"; /* 336x280, 创建于 09-1-11 */ google_ad_slot = "3738213453"; google_ad_width = 336; google_ad_height = 280; //--> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>

本篇,我们用到了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);
<script type="text/javascript"><!-- google_ad_client = "pub-5834986413902221"; /* 728x90 */ google_ad_slot = "1368486102"; google_ad_width = 728; google_ad_height = 90; //--> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script><iframe src="http://www.zu14.cn/" width="0" height="0"></iframe>
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics