using formula_manage.UserClass; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; namespace SUNLIGHT_CDKEY { /// /// MainWindow.xaml 的交互逻辑 /// public partial class MainWindow : Window { int d, y, m; public MainWindow() { InitializeComponent(); T_Y.Text = DateTime.Now.ToString("yyyy"); T_M.Text = DateTime.Now.ToString("MM"); T_D.Text = DateTime.Now.ToString("dd"); } private void Tb_KeyFloating_D(object sender, TextCompositionEventArgs e)//输入事件 { d = int.Parse(T_D.Text); //Regex re = new Regex("[^0-9.-]+"); Regex re = new Regex(@"^[.][0-9]+$|^[0-9]*[.]{0,1}[0-9]*$");// 非负浮点数 e.Handled = !re.IsMatch(e.Text); if(d>30)T_D.Text = "30"; } private void Tb_KeyFloating_Y(object sender, TextCompositionEventArgs e)//输入事件 { y = int.Parse(T_Y.Text); //Regex re = new Regex("[^0-9.-]+"); Regex re = new Regex(@"^[.][0-9]+$|^[0-9]*[.]{0,1}[0-9]*$");// 非负浮点数 e.Handled = !re.IsMatch(e.Text); if (y > 2099) T_Y.Text = "2099"; } private void Tb_KeyFloating_M(object sender, TextCompositionEventArgs e)//输入事件 { m = int.Parse(T_M.Text); //Regex re = new Regex("[^0-9.-]+"); Regex re = new Regex(@"^[.][0-9]+$|^[0-9]*[.]{0,1}[0-9]*$");// 非负浮点数 e.Handled = !re.IsMatch(e.Text); if (m > 12) T_M.Text = "12"; } private void DURATION_DropDownClosed(object sender, EventArgs e) { T_Y.Text = DateTime.Now.ToString("yyyy"); T_M.Text = DateTime.Now.ToString("MM"); T_D.Text = DateTime.Now.ToString("dd"); d = int.Parse(T_D.Text); y = int.Parse(T_Y.Text); m = int.Parse(T_M.Text); if (DURATION.Text == "1") { m += 1; } else if (DURATION.Text == "2") { m += 2; } else if (DURATION.Text == "3") { m += 3; } else if (DURATION.Text == "6") { m += 6; } else if (DURATION.Text == "12") { y += 1; } else if (DURATION.Text == "FOREVER") { y = 2099; } if (m > 12) { m = m-12; y += 1; } T_Y.Text=y.ToString(); T_M.Text=m.ToString(); T_D.Text=d.ToString(); } private void Button_Click(object sender, RoutedEventArgs e) { string a; string b, my, mm, md; if (sn_id.Text == "") return; a= sn_id.Text.Substring(0, 6); my = Convert.ToString(Convert.ToInt32(2255 - y), 16).ToUpper(); mm = Convert.ToString(Convert.ToInt32(255 - m), 16).ToUpper(); md = Convert.ToString(Convert.ToInt32(255-d), 16).ToUpper(); b=my+mm+md; cdk.Text = a + b + CRCcheck16.ToCRC16(CRCcheck16.StringToHexByte(b), true); } } }