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);
                }

            }

  • 相关阅读:
    How to clean up BizTalk Message Box
    BizTalk: Database ‘BizTalkMsgBoxDb’ is full
    Install or Uninstall a Windows Service
    Distinguished Fields and Optional Elements
    Stay Hungry, Stay Foolish
    男子英文名大全,来历、释义
    Correlations in BizTalk 2004
    17.域环境解决方案
    18.windows痕迹清理
    Burpsuit手机抓包
  • 原文地址:https://www.cnblogs.com/eaglet/p/1203404.html
Copyright © 2011-2022 走看看