// 将本地字符串匹配序列号 static bool MatchLocalString(string strSerialNumber, string strInstanceName) { List <string> macs = SerialCodeForm.GetMacAddress(); foreach (string mac in macs) { string strLocalString = OneInstanceDialog.GetEnvironmentString(mac, strSerialNumber, strInstanceName); string strSha1 = Cryptography.GetSHA1(StringUtil.SortParams(strLocalString) + "_reply"); if (strSha1 == SerialCodeForm.GetCheckCode(strSerialNumber)) { return(true); } } // 2014/12/19 if (DateTime.Now.Month == 12) { foreach (string mac in macs) { string strLocalString = OneInstanceDialog.GetEnvironmentString(mac, strSerialNumber, strInstanceName, true); string strSha1 = Cryptography.GetSHA1(StringUtil.SortParams(strLocalString) + "_reply"); if (strSha1 == SerialCodeForm.GetCheckCode(strSerialNumber)) { return(true); } } } return(false); }
// 将本地字符串匹配序列号 static bool MatchLocalString(string strSerialNumber, string strInstanceName, out string strDebugInfo) { strDebugInfo = ""; StringBuilder debuginfo = new StringBuilder(); debuginfo.Append("序列号 '" + strSerialNumber + "' 实例名 '" + strInstanceName + "'\r\n"); List <string> macs = SerialCodeForm.GetMacAddress(); debuginfo.Append("本机 MAC 地址: " + StringUtil.MakePathList(macs) + "\r\n"); debuginfo.Append("第一轮比较:\r\n"); foreach (string mac in macs) { string strLocalString = OneInstanceDialog.GetEnvironmentString(mac, strSerialNumber, strInstanceName); string strSha1 = Cryptography.GetSHA1(StringUtil.SortParams(strLocalString) + "_reply"); debuginfo.Append("MAC 地址 '" + mac + "' 环境字符串 '" + strLocalString + "' SHA '" + strSha1 + "'\r\n"); if (strSha1 == SerialCodeForm.GetCheckCode(strSerialNumber)) { debuginfo.Append("匹配\r\n"); return(true); } debuginfo.Append("不匹配\r\n"); } // 2014/12/19 if (DateTime.Now.Month == 12) { debuginfo.Append("第二轮比较:\r\n"); foreach (string mac in macs) { string strLocalString = OneInstanceDialog.GetEnvironmentString(mac, strSerialNumber, strInstanceName, true); string strSha1 = Cryptography.GetSHA1(StringUtil.SortParams(strLocalString) + "_reply"); debuginfo.Append("MAC 地址 '" + mac + "' 环境字符串 '" + strLocalString + "' SHA '" + strSha1 + "'\r\n"); if (strSha1 == SerialCodeForm.GetCheckCode(strSerialNumber)) { debuginfo.Append("匹配\r\n"); return(true); } debuginfo.Append("不匹配\r\n"); } } debuginfo.Append("最后返回不匹配\r\n"); strDebugInfo = debuginfo.ToString(); return(false); }
private void button_modifyInstance_Click(object sender, EventArgs e) { string strError = ""; HideMessageTip(); if (this.listView_instance.SelectedItems.Count == 0) { strError = "尚未选择要修改的事项"; goto ERROR1; } ListViewItem item = this.listView_instance.SelectedItems[0]; this.m_currentEditItem = item; OneInstanceDialog modify_instance_dlg = new OneInstanceDialog(); GuiUtil.AutoSetDefaultFont(modify_instance_dlg); modify_instance_dlg.Text = "修改一个实例"; modify_instance_dlg.InstanceName = ListViewUtil.GetItemText(item, COLUMN_NAME); modify_instance_dlg.DataDir = ListViewUtil.GetItemText(item, COLUMN_DATADIR); modify_instance_dlg.Bindings = ListViewUtil.GetItemText(item, COLUMN_BINDINGS).Replace(";", "\r\n"); modify_instance_dlg.LineInfo = (LineInfo)item.Tag; modify_instance_dlg.VerifyInstanceName += new VerifyEventHandler(modify_instance_dlg_VerifyInstanceName); modify_instance_dlg.VerifyDataDir += new VerifyEventHandler(modify_instance_dlg_VerifyDataDir); modify_instance_dlg.VerifyBindings += new VerifyEventHandler(modify_instance_dlg_VerifyBindings); modify_instance_dlg.LoadXmlFileInfo += new LoadXmlFileInfoEventHandler(modify_instance_dlg_LoadXmlFileInfo); modify_instance_dlg.StartPosition = FormStartPosition.CenterScreen; if (modify_instance_dlg.ShowDialog(this) == System.Windows.Forms.DialogResult.Cancel) return; ListViewUtil.ChangeItemText(item, COLUMN_NAME, modify_instance_dlg.InstanceName); ListViewUtil.ChangeItemText(item, COLUMN_DATADIR, modify_instance_dlg.DataDir); ListViewUtil.ChangeItemText(item, COLUMN_BINDINGS, modify_instance_dlg.Bindings.Replace("\r\n", ";")); modify_instance_dlg.LineInfo.Changed = true; item.Tag = modify_instance_dlg.LineInfo; ListViewUtil.SelectLine(item, true); this.Changed = true; return; ERROR1: MessageBox.Show(this, strError); return; }
private void button_newInstance_Click(object sender, EventArgs e) { HideMessageTip(); OneInstanceDialog new_instance_dlg = new OneInstanceDialog(); GuiUtil.AutoSetDefaultFont(new_instance_dlg); new_instance_dlg.Text = "创建一个新实例"; new_instance_dlg.IsNew = true; if (this.listView_instance.Items.Count == 0) { } else { new_instance_dlg.InstanceName = GetNewInstanceName(this.listView_instance.Items.Count + 1); } new_instance_dlg.VerifyInstanceName += new VerifyEventHandler(new_instance_dlg_VerifyInstanceName); new_instance_dlg.VerifyDataDir += new VerifyEventHandler(new_instance_dlg_VerifyDataDir); new_instance_dlg.VerifyBindings += new VerifyEventHandler(new_instance_dlg_VerifyBindings); new_instance_dlg.LoadXmlFileInfo += new LoadXmlFileInfoEventHandler(new_instance_dlg_LoadXmlFileInfo); new_instance_dlg.StartPosition = FormStartPosition.CenterScreen; if (new_instance_dlg.ShowDialog(this) == System.Windows.Forms.DialogResult.Cancel) return; ListViewItem item = new ListViewItem(); ListViewUtil.ChangeItemText(item, COLUMN_NAME, new_instance_dlg.InstanceName); ListViewUtil.ChangeItemText(item, COLUMN_DATADIR, new_instance_dlg.DataDir); ListViewUtil.ChangeItemText(item, COLUMN_BINDINGS, new_instance_dlg.Bindings.Replace("\r\n", ";")); this.listView_instance.Items.Add(item); new_instance_dlg.LineInfo.Changed = true; item.Tag = new_instance_dlg.LineInfo; ListViewUtil.SelectLine(item, true); this.Changed = true; }