C#(VB.NET)操作Windows自带的防火墙 之 启用(开启)/禁用(关闭)防火墙
时间:2022-06-11
本文章向大家介绍C#(VB.NET)操作Windows自带的防火墙 之 启用(开启)/禁用(关闭)防火墙,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
在上一篇 C#(VB.NET)操作Windows自带的防火墙 之 综述篇 里,我们提到了下面这幅图
本篇,我们就实现 启用/关闭 和 是否允许例外 的功能
先说明一点,因为windows自带了“安全中心” Security Center 这个功能,用程序关闭防火墙时,“安全中心” 会弹出提示,如图:
要解决这个问题,其实很简单,就是 将 Security Center 关闭,关闭的方法: 利用 net stop 或者 修改注册表 或者.NET 里面自带的 windows service操作,都可以,我就不啰嗦了
核心代码:
C# 方式:
/// <summary>
/// 获取防火墙管理的当前策略
/// </summary>
/// <returns>返回策略对应的 object</returns>
private static object FirewallCurrentProfile()
{
//获取管理防火墙的COM组件的type
Type fwMgrType = Type.GetTypeFromProgID("HNetCfg.FwMgr", true);
//创建一个COM组件的实例
object fwMgr = Activator.CreateInstance(fwMgrType);
//获取实例的LocalPolicy属性
object localPolicy = fwMgrType.InvokeMember("LocalPolicy", BindingFlags.GetProperty, null, fwMgr, null);
//获取 LocalPolicy属性的子属性CurrentProfile
return localPolicy.GetType().InvokeMember("CurrentProfile", BindingFlags.GetProperty, null, localPolicy, null);
}
VB.NET 方式:
Private Function FirewallProfile() As Object
Dim FWMgr As Object = CreateObject("HNetCfg.FwMgr")
Return FWMgr.LocalPolicy.CurrentProfil
End Function
C# 版本源代码下载 VB.NET版本源代码(有需要的留言吧,懒得去写了,嘿嘿)
原文:http://www.zu14.cn/2009/01/15/dotnet-enable-disable-firewall/
- 08.LoT.UI 前后台通用框架分解系列之——多样的Tag选择器
- iOS多线程——RunLoop与GCD、AutoreleasePool你要知道的iOS多线程NSThread、GCD、NSOperation、RunLoop都在这里
- iOS多线程——你要知道的RunLoop都在这里你要知道的iOS多线程NSThread、GCD、NSOperation、RunLoop都在这里
- iOS网络——AFNetworking AFHttpSessionManager源码解析
- iOS网络——SDWebImage SDImageDownloader源码解析你要知道的NSURLSession都在这里
- iOS缓存 NSCache详解及SDWebImage缓存策略源码分析你要知道的NSCache都在这里
- freeRTOS信号量学习
- 微信扫码支付+Asp.Net MVC
- Linq中连接主要有组连接、内连接、左外连接、交叉连接四种
- 深入源码理解YYCache 、SDWebImage、AFNetworking、NSCache 缓存方式与对比
- Linq Like的操作
- iOS网络——AFNetworking AFURLSessionManager源码解析
- 1692: [Usaco2007 Dec]队列变换(BZOJ1640强化版)
- 1620: [Usaco2008 Nov]Time Management 时间管理
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- ios SDK如何配置
- CopyOnWriteArrayList源码阅读笔记
- python 连接数据库MYSQL
- 知识卡片 CNN 卷积神经网络
- 计算机基础知识总结与操作系统 PDF 下载
- 【动手学深度学习】笔记一
- 【Python】使用Pygame做一个Flappy bird小游戏(一)
- 从0到1,实现你的第一个多层神经网络
- 【Python】使用Pygame做一个Flappy bird小游戏(二)
- 【Pandas】pandas的主要数据结构
- 【Python】使用Pygame做一个Flappy bird小游戏(三)
- Godot游戏开发实践之三:容易被忽视的Resource
- 方便快捷的调试 Node.js 程序
- LeetCode 06Z字形变换&07整数反转
- 对搜索表单提交是否为空进行弹出提示