private void LoginForm_Load(object sender, EventArgs e) { if (Program.IsSinglePoint) { this.Text = string.Format("登录 [版本号: {0}]", Program.Version); } else { this.Text = string.Format("登录 [版本号: {0}_M]", Program.Version); } List <string> userName = new List <string>(); foreach (var user in this.AppConfig.AppSettings.Settings.AllKeys) { if (!user.Equals(pubServerName)) { userName.Add(user); } else { pubServerIPCache = Cryptor.MD5Decrypt(this.AppConfig.AppSettings.Settings[pubServerName].Value); } } this.comboBox用户名.DataSource = userName; this.MAC = CommonUtils.GetMacAddress(); if (!string.IsNullOrEmpty(serverIP)) { this.label3.Visible = false; this.textBox服务器.Visible = false; this.textBox服务器.ReadOnly = true; this.textBox服务器.Text = serverIP; foreach (var item in ServerIPDict) { if (item.Value.Contains(serverIP)) { if (Program.IsSinglePoint) { this.Text = string.Format("{0} [版本号: {1}]", item.Key, Program.Version); } else { this.Text = string.Format("{0} [版本号: {1}_M]", item.Key, Program.Version); } } } } //this.textBox服务器.ReadOnly = true; //this.textBox服务器.Text = "210.13.212.206";//上海交易使用 if (isSelectServer) { //comboBoxServer.Items.Add("厦门252 110.86.28.227"); //comboBoxServer.Items.Add("65 110.86.28.229"); //comboBoxServer.Items.Add("策略正式 110.86.28.230"); //comboBoxServer.Items.Add("策略测试 110.86.28.228"); foreach (var item in ServerIPDict.Values) { comboBoxServer.Items.Add(item); } comboBoxServer.Left = textBox服务器.Left; comboBoxServer.Width = textBox服务器.Width; SetServerSelectIndex(); //textBox服务器.Visible = false; } else { comboBoxServer.Visible = false; } }
private void button登录_Click(object sender, EventArgs e) { try { if (textBox服务器.Text.Length == 0) { MessageBox.Show("请输入登陆服务器IP!"); return; } //string server = string.IsNullOrEmpty(serverIP) ? textBox服务器.Text : serverIP; Program.EndpointAddress = new EndpointAddress(new Uri(string.Format("net.tcp://{0}:{1}/", textBox服务器.Text, Program.Port)), EndpointIdentity.CreateDnsIdentity("localhost")); //if (Program.Port == "808") //{ //} //else //{ // Program.EndpointAddress = new EndpointAddress(new Uri(string.Format("net.tcp://{0}/", textBox服务器.Text)), EndpointIdentity.CreateDnsIdentity("localhost")); //} Program.AASServiceClient = new AASServiceReference.AASServiceClient(Program.callbackInstance, Program.NetTcpBinding, Program.EndpointAddress); //Program.EndpointAddress = new EndpointAddress(new Uri(string.Format("http://{0}/", server)), EndpointIdentity.CreateDnsIdentity("localhost")); //Program.AASServiceClient = new AASServiceReference.AASServiceClient(Program.callbackInstance, Program.WSDualHttpBinding, Program.EndpointAddress); Program.AASServiceClient.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = System.ServiceModel.Security.X509CertificateValidationMode.None; Program.AASServiceClient.ClientCredentials.UserName.UserName = this.comboBox用户名.Text; Program.AASServiceClient.ClientCredentials.UserName.Password = this.textBox密码.Text + "\t" + this.MAC; Program.Current平台用户 = Program.AASServiceClient.QuerySingleUser(Program.Version)[0]; Program.LoginInfoCache(textBox服务器.Text, this.comboBox用户名.Text, this.textBox密码.Text); //优先获取缓存的分发服务器地址 //pubServerIPCache = "192.168.1.28"; if (pubServerIPCache != string.Empty && CommonUtils.TelnetPort(pubServerIPCache, AASClient.TDFData.DataCache.ServerPort)) { AASClient.TDFData.DataCache.ServerIP = pubServerIPCache; } else { string ip = Program.AASServiceClient.GetDataServerIP(); if (string.IsNullOrEmpty(ip)) { TDFData.DataSourceConfig.IsUseTDFData = false; } else { if (ip.Contains(System.Environment.NewLine)) { string[] arr = ip.Split(new[] { System.Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries); foreach (var item in arr) { if (CommonUtils.TelnetPort(item, AASClient.TDFData.DataCache.ServerPort)) { AASClient.TDFData.DataCache.ServerIP = item; if (this.AppConfig.AppSettings.Settings.AllKeys.Contains(pubServerName)) { if (item.Equals(Cryptor.MD5Decrypt(this.AppConfig.AppSettings.Settings[pubServerName].Value))) { break; } this.AppConfig.AppSettings.Settings[pubServerName].Value = Cryptor.MD5Encrypt(item); } else { this.AppConfig.AppSettings.Settings.Add(pubServerName, Cryptor.MD5Encrypt(item)); } this.AppConfig.Save(ConfigurationSaveMode.Modified); System.Configuration.ConfigurationManager.RefreshSection("appSettings"); break; } Thread.Sleep(100); } } else { if (CommonUtils.TelnetPort(ip, AASClient.TDFData.DataCache.ServerPort)) { AASClient.TDFData.DataCache.ServerIP = ip; } } } } if (AASClient.TDFData.DataCache.ServerIP == string.Empty) { MessageBox.Show("行情服务器IP为空!"); TDFData.DataSourceConfig.IsUseTDFData = false; } //MessageBox.Show(AASClient.TDFData.DataCache.ServerIP); ICommunicationObject ICommunicationObject1 = Program.AASServiceClient as ICommunicationObject; ICommunicationObject1.Faulted += ICommunicationObject1_Faulted; ICommunicationObject1.Closed += ICommunicationObject1_Closed; if (this.checkBox记住密码.Checked) { if (this.AppConfig.AppSettings.Settings.AllKeys.Contains(this.comboBox用户名.Text)) { this.AppConfig.AppSettings.Settings[this.comboBox用户名.Text].Value = this.textBox服务器.Text + "," + Cryptor.MD5Encrypt(this.textBox密码.Text); } else { this.AppConfig.AppSettings.Settings.Add(this.comboBox用户名.Text, this.textBox服务器.Text + "," + Cryptor.MD5Encrypt(this.textBox密码.Text)); } this.AppConfig.Save(ConfigurationSaveMode.Modified); System.Configuration.ConfigurationManager.RefreshSection("appSettings"); } else { if (this.AppConfig.AppSettings.Settings.AllKeys.Contains(this.comboBox用户名.Text)) { this.AppConfig.AppSettings.Settings.Remove(this.comboBox用户名.Text); this.AppConfig.Save(ConfigurationSaveMode.Modified); System.Configuration.ConfigurationManager.RefreshSection("appSettings"); } } Directory.CreateDirectory(Program.Current平台用户.用户名); this.DialogResult = System.Windows.Forms.DialogResult.OK; } catch (MessageSecurityException ex) { if (ex.InnerException == null) { MessageBox.Show(ex.Message, "MessageSecurityException - InnerException"); } else { MessageBox.Show(ex.InnerException.Message, "MessageSecurityException"); } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().Name); } }