Example #1
0
        private void EncReq(object sender, RoutedEventArgs e)
        {
            if (inputFile.Text == "")
            {
                statusBox.Text += "未选择输入文件\n";
                MessageBox.Show("请选择输入文件");
                return;
            }
            if (outputFile.Text == "")
            {
                outputFile.Text = inputFile.Text + ".sdc";//sm document cipher
            }
            doCacnel              = false;
            inputBtn.IsEnabled    = false;
            outputBtn.IsEnabled   = false;
            inputFile.IsReadOnly  = true;
            outputFile.IsReadOnly = true;
            encBtn.IsEnabled      = false;
            decBtn.IsEnabled      = false;
            cancel.IsEnabled      = true;
            statusBox.Text       += "选择加密源……\n";
            var sel = switchServ();

            if (sel == null)
            {
                statusBox.Text += "已取消操作\n";
                tryCancel();
                return;
            }
            statusBox.Text += "选择: " + sel.name + "\n";
            statusBox.Text += "建立连接……\n";
            conn            = new ClientLib.Conn(sel.addr);
            workTh          = ctx.CalcHash(inputFile.Text, EncHashCallback);
            statusBox.Text += "计算Hash……\n";
        }
Example #2
0
 private void tryCancel(bool dontAbort = false)
 {
     doCacnel = true;
     if (conn != null)
     {
         conn.Close();
         conn = null;
     }
     if (workTh != null && !dontAbort)
     {
         workTh.Abort();
         workTh = null;
     }
     inputBtn.IsEnabled    = true;
     outputBtn.IsEnabled   = true;
     inputFile.IsReadOnly  = false;
     outputFile.IsReadOnly = false;
     encBtn.IsEnabled      = true;
     decBtn.IsEnabled      = true;
     cancel.IsEnabled      = false;
 }