private void BtnOK_Click(object sender, RoutedEventArgs e)
        {
            bool Restart = false;

            if (chkAutoStart.IsChecked == true)
            {
                App.SetConfig("Startup", "Tray", true);
                App.mTray.Visible = true;

                App.AutoStart(true);
                if (chkService.IsChecked == true)
                {
                    App.svc.Install();
                    Restart = true;
                }
            }
            if (chkNoUAC.IsChecked == true)
            {
                AdminFunc.SkipUacEnable(App.mName, true);
            }

            if (chkUseFW.IsChecked == true)
            {
                App.SetConfig("Firewall", "Enabled", 1);

                Firewall.FilteringModes Mode = Firewall.FilteringModes.WhiteList;
                App.SetConfig("Firewall", "Mode", Mode.ToString());
                App.itf.SetFilteringMode(Mode);

                Firewall.Auditing audit = Firewall.Auditing.All;
                App.SetConfig("Firewall", "AuditPol", audit.ToString());
                App.itf.SetAuditPol(audit);

                App.SetConfig("Firewall", "NotifyBlocked", chkNotifyFW.IsChecked == true ? 1 : 0);
            }

            App.SetConfig("Startup", "ShowSetup", 0);
            if (Restart)
            {
                App.Restart();
            }
            this.DialogResult = true;
        }
示例#2
0
 public bool SetFilteringMode(Firewall.FilteringModes Mode)
 {
     return(RemoteExec("SetFilteringMode", Mode, false));
 }
示例#3
0
 public bool SetFilteringMode(Firewall.FilteringModes Mode)
 {
     return(mDispatcher.Invoke(new Func <bool>(() => {
         return firewall.SetFilteringMode(Mode);
     })));
 }