コード例 #1
0
        private void loadWindowsVpnConnections()
        {
            var wVpn = new WindowsVPN();

            WindowsVpnList = new ObservableCollection <string>(wVpn.GetVpnConnections());
        }
コード例 #2
0
        public void Test()
        {
            if (SelectedVpn == null)
            {
                return;
            }

            if (SelectedVpn.Type == VpnType.Undefined)
            {
                MessageBox.Show(_LangDictionary["ConfigureFirst"].ToString(), _LangDictionary["ConfigureFirstTitle"].ToString(), MessageBoxButton.OK, MessageBoxImage.Information);
                return;
            }

            switch (SelectedVpn.Type)
            {
                #region CiscoVpn
            case VpnType.CiscoVpn:
                if (SelectedVpn == null)
                {
                    return;
                }

                var cVpn = new CiscoVpn();
                cVpn.ClientPath = SelectedVpn.Parameter2;
                cVpn.ConfigName = SelectedVpn.Parameter1;
                cVpn.ShowAuthenticationWindow = Convert.ToBoolean(SelectedVpn.Parameter3);
                cVpn.CredentialId             = Convert.ToInt32(SelectedVpn.Parameter4);

                if (cVpn.Connect())
                {
                    MessageBox.Show(_LangDictionary["CiscoVpnTestStep1"].ToString(), _LangDictionary["CiscoVpnTestStep1Title"].ToString(), MessageBoxButton.OK, MessageBoxImage.Information);
                    cVpn.Disconnect();
                }
                else
                {
                    MessageBox.Show(_LangDictionary["CiscoVpnTestStep1Fail"].ToString(), _LangDictionary["CiscoVpnTestStep1FailTitle"].ToString(), MessageBoxButton.OK, MessageBoxImage.Error);
                }
                break;

                #endregion
                #region OpenVpn
            case VpnType.OpenVpn:
                if (SelectedVpn == null)
                {
                    return;
                }

                var oVpn = new OpenVpn();
                oVpn.ConfigPath = SelectedVpn.Parameter2;     //exe file
                oVpn.ConfigName = SelectedVpn.Parameter1;     //Config file

                if (oVpn.Connect())
                {
                    MessageBox.Show(_LangDictionary["OvVpnTestStep1"].ToString(), _LangDictionary["OvVpnTestStep1Title"].ToString(), MessageBoxButton.OK, MessageBoxImage.Information);
                    oVpn.Disconnect();
                }
                else
                {
                    MessageBox.Show(_LangDictionary["OvVpnTestStep1Fail"].ToString(), _LangDictionary["OvVpnTestStep1FailTitle"].ToString(), MessageBoxButton.OK, MessageBoxImage.Error);
                }
                break;

                #endregion
                #region ShrewSoftVpn
            case VpnType.ShrewSoftVpn:
                if (SelectedVpn == null)
                {
                    return;
                }

                var sVpn = new ShrewSoftVPN();
                sVpn.ConfigName   = SelectedVpn.Parameter1;
                sVpn.ConfigPath   = SelectedVpn.Parameter2;
                sVpn.Parameter3   = SelectedVpn.Parameter3;
                sVpn.CredentialId = Convert.ToInt32(SelectedVpn.Parameter4);
                if (sVpn.Connect() == true)
                {
                    MessageBox.Show(_LangDictionary["SsVpnTestStep1"].ToString(), _LangDictionary["SsVpnTestStep1Title"].ToString(), MessageBoxButton.OK, MessageBoxImage.Information);
                }
                else
                {
                    MessageBox.Show(_LangDictionary["SsVpnTestStep1Fail"].ToString(), _LangDictionary["SsVpnTestStep1FailTitle"].ToString(), MessageBoxButton.OK, MessageBoxImage.Error);
                }
                break;

                #endregion
                #region WindowsVpn
            case VpnType.WindowsVpn:
                var wVpn = new WindowsVPN();
                wVpn.ConfigName   = SelectedVpn.Parameter1;
                wVpn.CredentialId = Convert.ToInt32(SelectedVpn.Parameter4);
                if (wVpn.Connect() == true)
                {
                    MessageBox.Show(_LangDictionary["WinVpnTestStep1"].ToString(), _LangDictionary["WinVpnTestStep1Title"].ToString(), MessageBoxButton.OK, MessageBoxImage.Information);
                    wVpn.Disconnect();
                }
                else
                {
                    MessageBox.Show(_LangDictionary["WinVpnTestStep1Fail"].ToString(), _LangDictionary["WinVpnTestStep1FailTitle"].ToString(), MessageBoxButton.OK, MessageBoxImage.Error);
                }
                break;
                #endregion
            }
        }