操作防火墙

 1         /// 通过对象防火墙操作
 2         /// 域网络防火墙(禁用:false;启用(默认):true)
 3         /// 公共网络防火墙(禁用:false;启用(默认):true)
 4         /// 专用网络防火墙(禁用: false;启用(默认):true)
 5         public static bool FirewallOperateByObject(bool isOpenDomain = true, bool isOpenPublicState = true, bool isOpenStandard = true)
 6         {
 7             try
 8             {
 9                 INetFwPolicy2 firewallPolicy = (INetFwPolicy2)Activator.CreateInstance(Type.GetTypeFromProgID("HNetCfg.FwPolicy2"));
10                 // 启用<高级安全Windows防火墙> - 专有配置文件的防火墙
11                 firewallPolicy.set_FirewallEnabled(NET_FW_PROFILE_TYPE2_.NET_FW_PROFILE2_PRIVATE, isOpenStandard);
12                 // 启用<高级安全Windows防火墙> - 公用配置文件的防火墙
13                 firewallPolicy.set_FirewallEnabled(NET_FW_PROFILE_TYPE2_.NET_FW_PROFILE2_PUBLIC, isOpenPublicState);
14                 // 启用<高级安全Windows防火墙> - 域配置文件的防火墙
15                 firewallPolicy.set_FirewallEnabled(NET_FW_PROFILE_TYPE2_.NET_FW_PROFILE2_DOMAIN, isOpenDomain);
16             }
17             catch (Exception e)
18             {
19                 string error = $"防火墙修改出错:{e.Message}";
20                 throw new Exception(error);
21             }
22             return true;
23         }

 

posted @ 2025-11-29 20:13  家煜宝宝  阅读(5)  评论(0)    收藏  举报