zoukankan      html  css  js  c++  java
  • 通过编程管理windows 防火墙

    通过编程管理windows 防火墙
        作者:肖波
        最近项目中需要通过程序自动设置windows 防火墙,查了一下资料,可以通过命令行netsh firewall来实现。封装了一个类来实现对允许放开的程序(Allowed program)进行管理。管理其他内容比如放开端口等方法是类似的。
        程序中用到一个公共类 RunProcess,这个类可从我的另一篇文章 一个C#写的调用外部进程类 获得

    namespace WinFirewall
    {

        
    public enum TScope
        
    {
            ALL,
            SUBNET,
            CUSTOM,
        }


        
    public enum TMode
        
    {
            ENABLE,
            DISABLE,
        }


        
    /// <summary>
        
    /// Manage the allowed program with the Windows Firewall.
        
    /// </summary>

        public class AllowedProgram
        
    {
            
    Set AllowedProgram Help

            
    private field

            
    public property

            
    public method
        }

    }


    调用的相关例程

            private void buttonSetAllowProgram_Click(object sender, EventArgs e)
            
    {
                
    try
                
    {
                    AllowedProgram allowedProgram 
    = new AllowedProgram();
                    allowedProgram.Program 
    = textBoxProgramFilePath.Text.Trim();

                    
    if (checkBoxEnable.Checked)
                    
    {
                        allowedProgram.Mode 
    = TMode.ENABLE;
                    }

                    
    else
                    
    {
                        allowedProgram.Mode 
    = TMode.DISABLE;
                    }


                    allowedProgram.Scope 
    = (TScope)comboBoxScope.SelectedItem;

                    allowedProgram.Address 
    = textBoxAddress.Text.Trim();

                    allowedProgram.Set();

                    MessageBox.Show(
    "OK""Information", MessageBoxButtons.OK);
                }

                
    catch (Exception e1)
                
    {
                    MessageBox.Show(e1.Message, 
    "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }

            }


            
    private void buttonDelAllowProgram_Click(object sender, EventArgs e)
            
    {
                
    try
                
    {
                    AllowedProgram allowedProgram 
    = new AllowedProgram();
                    allowedProgram.Program 
    = textBoxProgramFilePath.Text.Trim();
                    allowedProgram.Delete();

                    MessageBox.Show(
    "OK""Information", MessageBoxButtons.OK);
                }

                
    catch (Exception e1)
                
    {
                    MessageBox.Show(e1.Message, 
    "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }

            }

  • 相关阅读:
    MVC CONTROLS TOOLKIT
    activemq Example
    OWASP
    ActiveMQ持久化消息的三种方式
    sqlyog
    dotnet压缩
    asp.net ajax 环境 c#与js互调
    asp.net 初步入门使用正则抓取网页信息
    用ASP.NET with C# 绘制曲线图(Curve图)转
    asp.net 中使用excel组件权限设置
  • 原文地址:https://www.cnblogs.com/eaglet/p/1203404.html
Copyright © 2011-2022 走看看