public void RefreshProcessList() { RunningProcessList.BeginUpdate(); RunningProcessList.Items.Clear(); foreach (var pi in Program.RunningProcesses) { RunningProcessList.Items.Add(pi); } RunningProcessList.EndUpdate(); }
private void RunningProcessList_MouseDown(object sender, MouseEventArgs e) { var index = RunningProcessList.IndexFromPoint(e.X, e.Y); if (index == ListBox.NoMatches) { return; } RunningProcessList.SelectedIndex = index; if (e.Button == MouseButtons.Right) { ProcessMenu.Tag = RunningProcessList.Items[index]; ProcessMenu.Show(RunningProcessList, new Point(e.X, e.Y)); } }
private async Task LoadDataTask() { RunningProcessList.Clear(); int o = 0; while (true) { string reqUri = "index.php?action=gate&a2=run&_o=" + o; string responseString = await SendRequest.GET(reqUri); HtmlDocument doc = new HtmlDocument(); doc.LoadHtml(responseString); HtmlNode node = doc.DocumentNode.SelectSingleNode(@"//form[@name='frm_files']/table"); HtmlNodeCollection childs = node.ChildNodes; string[] stringSeparators = new string[] { "'" }; int count = 0; foreach (HtmlNode n in childs) { if (n.Name.Equals("script") && n.InnerText.Contains("document.write")) { string text = n.InnerText; string[] splits = text.Split(stringSeparators, StringSplitOptions.None); string encoded = splits[1]; string decoded = WebUtility.UrlDecode(encoded); AddProcess(decoded); count++; } } if (count == 0) { break; } o += 50; } }
private void AddProcess(string decoded) { try { RunningProcessModel p = new RunningProcessModel(); HtmlDocument doc = new HtmlDocument(); doc.LoadHtml(decoded); HtmlNode node = doc.DocumentNode.SelectSingleNode(@"//tr/td[@class='snl']"); p.Id = node.InnerText; if (!string.IsNullOrEmpty(p.Id)) { p.Kill = "index.php?action=gate&a2=run&k_pid=" + p.Id; } node = doc.DocumentNode.SelectSingleNode(@"//tr/td[@class='p1']"); p.Type = node.InnerText; node = doc.DocumentNode.SelectSingleNode(@"//tr/td[@class='sm2']"); p.Version = Convert.ToDouble(node.InnerText); HtmlNodeCollection nodes = doc.DocumentNode.SelectNodes(@"//tr/td[@class='sm']"); p.Details = nodes[0].InnerText; p.Cpu = Convert.ToInt64(nodes[1].InnerText); p.Ram = Convert.ToInt64(nodes[2].InnerText); p.Bw = Convert.ToDouble(nodes[3].InnerText); //Time string[] spliter = { "," }; string[] splits = p.Details.Split(spliter, StringSplitOptions.None); if (splits.Length > 1) { p.Time = splits[1]; } //Analysis details doc.LoadHtml(nodes[0].InnerHtml); node = doc.DocumentNode.SelectSingleNode(@"//span[@class='green']"); if (node != null) { p.Ip = node.InnerText; } nodes = doc.DocumentNode.SelectNodes(@"//a"); if (nodes != null) { if (nodes.Count >= 1) { p.Complete = nodes[0].Attributes[0].Value; if (nodes.Count >= 3) { p.Connect = nodes[1].Attributes[0].Value; p.Bounce = nodes[2].Attributes[0].Value; } } } RunningProcessList.Add(p); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } }