在Vista中编程控制防火墙设定

本文介绍了一个用于编程控制防火墙的程序示例,包括开关防火墙、管理服务、端口及应用等功能。该程序适用于管理员权限用户,可在Vista和XP SP2等系统上使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

导读:
  
  在编程控制防火墙前先要有个前提,就是你必须是管理员权限, 这样本例的程序才能用"Run as administrator"的方式运行,并成功修改。 如果你本身就是用Administrator这个用户登录的话,直接运行就行了。 建议最好在这个用户下来调试程序。 BBS.bitsCN.com网管论坛
  本程序只是个初始的例子,里面的功能只开发了一部分,各位有兴趣的话可以继续深入运用。 像Vista的防火墙就比较Bt,除了基本设定外,在"Control Panel/Administrative Tools/Windows Firewall with Advanced Security" 还有高级设定,好像用程序都可控制。 [bitsCN_com]
  FireWallManager 程序主要功能有 DL@bitsCN_com网管软件下载
  1. public void FireWallTrigger( bool enable ) //开关防火墙。 貌似在Vista里面有问题,XP sp2好像可以。 但是用INetFwPolicy2.set_FirewallEnabled的方法的话,Vista也能搞定。
  BBS.bitsCN.com网管论坛
  2. public void FireWallService( string name, bool enable ) //开关防火墙服务程序,一般里面的 File and Printer Sharing 服务比较有用。 bbs.bitsCN.com中国网管论坛
  3. public bool AddPort( string portName, int portNumber, string protocol ) // 开启一个端口。 DL@bitsCN_com网管软件下载
  4. public bool RemovePort( int portNumber, string protocol ) //删除开启的端口
  [bitsCN_com]
  5. public bool AddAplication( string discriptionName, string fileName ) //开启放行应用程序
  DL@bitsCN_com网管软件下载
  6. public bool RemoveApplication( string fileName ) // 关闭放行的应用程序。 BBS.bitsCN.com网管论坛
  里面还有个 protected Object getInstance( String typeName ) 本来是用CLSID来实例化那些接口的,后来发现ProgID其实更简单,不需要查,里面有个规律,只需把接口的INet删掉就是ProgID了。 如 INetFwOpenPort port = ( INetFwOpenPort )Activator.CreateInstance( Type.GetTypeFromProgID( "HNetCfg.FwOpenPort" ) ); 中 INetFwOpenPort 与 FwOpenPort. bitsCN.nET*中国网管博客
  首先,创建一个Console程序,在程序中添加引用,在COM对象中找到"NetFwTypeLib" ,添加即可。 防火墙主要是靠这个对象操作的。 貌似不止Vista, Xp也是一样的。核心程序如下:

本文转自
http://www.bitscn.com/dotnet/framework/200709/109661.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值