Ejemplo n.º 1
0
        private void exhausitiverThread(Object obj)
        {
            Dictionary <String, String> currentParam = dicHandle.nextParam();

            while (currentParam != null && currentParam.Count > 0 && running && dicHandle.totalNums >= currentPersion)
            {
                try
                {
                    Int32  length           = commConfig.General.Body.Length;
                    string postBody         = commConfig.General.Body;
                    string currentParamJson = JsonHandle.toJson(currentParam);
                    foreach (string paraName in currentParam.Keys)
                    {
                        postBody = postBody.Replace("${" + paraName + "}", currentParam[paraName]);
                    }
                    ExhausitiverEntity threadExhausitiverEntity = ExhausitiverEntity.parseExhausitiver(commConfig.General.Protocol, commConfig.General.Encode, commConfig.General.TimeOut, postBody);
                    ExhaustiverResult  result = ExhausitiverHandle.doExhausitiver(threadExhausitiverEntity, commConfig.Verification);
                    result.Param = currentParam;
                    if (result.Success == true)
                    {
                        if (SuccessStopCheckBox.Checked)
                        {
                            running = false;
                        }
                        ExhaustiverResultTextBox.AppendText(currentParamJson + "\r\n");
                    }
                    ListViewItem lvi = new ListViewItem();
                    lvi.Text = "0";
                    lvi.SubItems.Add(currentParamJson);
                    lvi.SubItems.Add(Convert.ToString(result.Code));
                    lvi.SubItems.Add(Convert.ToString(result.Length));
                    lvi.SubItems.Add(result.Success ? "成功" : "失败");
                    lvi.SubItems.Add(threadExhausitiverEntity.Body + "\n\n" + result.Result);
                    if (result.Success)
                    {
                        lvi.ForeColor = Color.Green;
                    }
                    paramPersion = lvi;
                    lviQueues.Enqueue(lvi);
                    if (result.Success)
                    {
                        if (SuccessStopCheckBox.Checked)
                        {
                            break;
                        }
                    }
                }
                catch { }
                finally
                {
                    speed++;
                    currentPersion++;
                    currentParam = dicHandle.nextParam();
                }
                Thread.Sleep(1);
            }
        }
Ejemplo n.º 2
0
        private void button2_Click(object sender, EventArgs e)
        {
            try
            {
                ExhausitiverConfig config = parseConfig();

                String json = JsonHandle.toJson(config);
                json = JsonHandle.JsonTree(json);
                String     fileName = System.Diagnostics.Process.GetCurrentProcess().ProcessName + ".conf";
                FileStream fs       = new FileStream(fileName, FileMode.Create);
                byte[]     data     = System.Text.Encoding.Default.GetBytes(json);
                fs.Write(data, 0, data.Length);
                fs.Flush();
                fs.Close();
                MessageBox.Show("保存成功(" + fileName + ")");
            }
            catch { }
        }
Ejemplo n.º 3
0
        private ExhausitiverConfig parseConfig()
        {
            ExhausitiverConfig config  = new ExhausitiverConfig();
            ExhausitiverEntity general = new ExhausitiverEntity();

            general.Protocol  = ConfigProtocolComboBox.Text;
            general.Host      = ConfigHostTextBox.Text.Trim();
            general.Method    = ConfigMethodComboBox.Text;
            general.Port      = Convert.ToInt32(ConfigPortTextBox.Text);
            general.TimeOut   = Convert.ToInt32(ConfigTimeOutCombox.Text.Replace("秒", "")) * 1000;
            general.Encode    = ConfigEncodeComboBox.Text;
            general.Data      = Encoding.GetEncoding(ConfigEncodeComboBox.Text.Equals("自动") ? "UTF-8" : ConfigEncodeComboBox.Text).GetBytes(ConfigBodyTextBox.Text);
            general.Body      = ConfigBodyTextBox.Text;
            general.ThreadNum = Convert.ToInt32(ConfigThreadNumComboBox.Text);
            config.General    = general;
            ExhaustiverVerification verification = new ExhaustiverVerification();

            verification.CalcType         = ConfigCalcComboBox.SelectedIndex;
            verification.VerificationType = ConfigVerificationTypeComboBox.SelectedIndex;
            verification.Value            = ConfigVerificationValueTextBox.Text;
            verification.SuccessThenStop  = (SuccessStopCheckBox.Checked)?true:false;
            config.Verification           = verification;
            List <ExhausitiverDic> dics = new List <ExhausitiverDic>();

            for (int i = 0; i < DicsListview.Items.Count; i++)
            {
                ExhausitiverDic dic = new ExhausitiverDic();
                dic.ParamName = DicsListview.Items[i].SubItems[0].Text;
                dic.Path      = DicsListview.Items[i].SubItems[1].Text;
                dics.Add(dic);
            }
            config.Dics = dics;
            String     json = JsonHandle.toJson(config);
            FileStream fs   = new FileStream(System.Diagnostics.Process.GetCurrentProcess().ProcessName + ".conf", FileMode.Create);

            byte[] data = System.Text.Encoding.Default.GetBytes(json);
            fs.Write(data, 0, data.Length);
            fs.Flush();
            fs.Close();
            return(config);
        }
 public void modifyExpInfo(ExpModule exp, Int32 index)
 {
     try
     {
         String configJson = JsonHandle.toJson(exp);
         if (index == -1)
         {
             ListViewItem lvi = new ListViewItem();
             lvi.SubItems[0].Text = Convert.ToString(ExpListView.Items.Count + 1);
             lvi.SubItems.Add(exp.Name);
             lvi.SubItems.Add(exp.Language);
             lvi.SubItems.Add(configJson);
             lvi.SubItems.Add(verificationTypes[exp.Verification.Type] + ":" + exp.Verification.Context);
             lvi.SubItems.Add(exp.Status == 0 ? "禁用" : "启用");
             for (int i = 0; i < ExpListView.Items.Count; i++)
             {
                 if (ExpListView.Items[i].SubItems[1].Text.Equals(exp.Name))
                 {
                     ExpListView.Items[i] = lvi;
                     ExpListView.Update();
                     return;
                 }
             }
             ExpListView.Items.Add(lvi);
             return;
         }
         ExpListView.Items[index].SubItems[0].Text = Convert.ToString(ExpListView.Items.Count + 1);
         ExpListView.Items[index].SubItems[1].Text = exp.Name;
         ExpListView.Items[index].SubItems[2].Text = exp.Language;
         ExpListView.Items[index].SubItems[3].Text = configJson;
         ExpListView.Items[index].SubItems[4].Text = (verificationTypes[exp.Verification.Type] + ":" + exp.Verification.Context);
         ExpListView.Items[index].SubItems[5].Text = (exp.Status == 0 ? "禁用" : "启用");
         return;
     }
     catch { }
     finally
     {
         resetListViewIndex(ExpListView);
         saveConfig();
     }
 }
Ejemplo n.º 5
0
 private void saveConfig()
 {
     try
     {
         List <KeywordCodeTrigger> keys = new List <KeywordCodeTrigger>();
         for (int i = 0; i < ConfigListView.Items.Count; i++)
         {
             KeywordCodeTrigger key = new KeywordCodeTrigger();
             key.keyword      = ConfigListView.Items[i].SubItems[1].Text;
             key.code         = ConfigListView.Items[i].SubItems[2].Text;
             key.nextPageCode = ConfigListView.Items[i].SubItems[3].Text;
             keys.Add(key);
         }
         String     json = JsonHandle.toJson(keys);
         FileStream fs   = new FileStream(System.Diagnostics.Process.GetCurrentProcess().ProcessName + ".conf", FileMode.Create);
         byte[]     data = System.Text.Encoding.Default.GetBytes(json);
         fs.Write(data, 0, data.Length);
         fs.Flush();
         fs.Close();
     }
     catch { }
 }
        private void saveConfig()
        {
            CoodyConfig config = new CoodyConfig();

            config.ThreadNum = ThreadNumComboBox.Text;
            config.TimeOut   = TimeOutComboBox.Text;
            List <String[]> headerListviews = new List <string[]>();

            for (int i = 0; i < HeaderListview.Items.Count; i++)
            {
                String[] lines = new String[2];
                lines[0] = HeaderListview.Items[i].SubItems[0].Text;
                lines[1] = HeaderListview.Items[i].SubItems[1].Text;
                headerListviews.Add(lines);
            }
            config.HeaderListviews = headerListviews;
            List <String[]> expListViews = new List <string[]>();

            for (int i = 0; i < ExpListView.Items.Count; i++)
            {
                String[] lines = new String[6];
                lines[0] = ExpListView.Items[i].SubItems[0].Text;
                lines[1] = ExpListView.Items[i].SubItems[1].Text;
                lines[2] = ExpListView.Items[i].SubItems[2].Text;
                lines[3] = ExpListView.Items[i].SubItems[3].Text;
                lines[4] = ExpListView.Items[i].SubItems[4].Text;
                lines[5] = ExpListView.Items[i].SubItems[5].Text;
                expListViews.Add(lines);
            }
            config.ExpListViews = expListViews;
            String     json = JsonHandle.toJson(config);
            FileStream fs   = new FileStream(System.Diagnostics.Process.GetCurrentProcess().ProcessName + ".conf", FileMode.Create);

            byte[] data = System.Text.Encoding.Default.GetBytes(json);
            fs.Write(data, 0, data.Length);
            fs.Flush();
            fs.Close();
        }