-
c# 扫描IP Http Header
c# 扫描IP Http Headerusing System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Threading;using System.IO;namespace HScan{ public partial class Form1 : Form { int _currentThreads = 0; int _maxThreads = 100; Thread main = null; Thread mt = null; List threads = new List(); public Form1() { InitializeComponent(); Control.CheckForIllegalCrossThreadCalls = false; } private void btnStart_Click(object sender, EventArgs e) { btnStart.Enabled = false; if (txtStart.Text.Trim() == "") { MessageBox.Show("起始IP不能为空."); return; } if (txtEnd.Text.Trim() == "") { MessageBox.Show("结束IP不能为空."); return; } int ts = Convert.ToInt32(txtThreads.Text); _maxThreads = ts; string startIp = txtStart.Text; string endIp = txtEnd.Text; TParameter tp=new TParameter(); tp.StartIp=startIp; tp.EndIp=endIp; tp.ThreadCount=ts; main = new Thread(new ParameterizedThreadStart(StartMe)); main.Start(tp); } protected void ThreadManage() { Thread c=null; while (true) { System.Object lockThis = new System.Object(); lock (lockThis) { for (int i = 0; i < threads.Count; i ) { if (threads[i] != null && !threads[i].IsAlive) { c = threads[i]; break; } } if (c != null) { threads.Remove(c); } } } } protected void StartMe(object ob) { mt = new Thread(new ThreadStart(ThreadManage)); mt.Start(); TParameter p = ob as TParameter; string curIp = p.StartIp; while (true) { for (int i = 0; i < _maxThreads; i ) { if (curIp != "") { if (_currentThreads >= _maxThreads) break; System.Object lockThis = new System.Object(); lock (lockThis) { _currentThreads ; if (_currentThreads > _maxThreads) _currentThreads = _maxThreads; string tip = curIp; Thread t = new Thread(new ParameterizedThreadStart(Run)); t.Start(tip); threads.Add(t); curIp = IPUtility.getLastIp(curIp, p.EndIp, 1); } } else { break; } } } } protected void Run(object ob) { string ip = ob.ToString(); SocketGetHead h = new SocketGetHead(); string ret = h.GetHtml(ip, 80); if (ret.IndexOf("DVRDVS-Webs") > 0) { ListViewItem item = new ListViewItem(); item.SubItems[0].Text = (listView1.Items.Count 1).ToString(); ListViewItem.ListViewSubItem lvSubItem = new ListViewItem.ListViewSubItem(); lvSubItem.Text = ip; item.SubItems.Add(lvSubItem); lvSubItem = new ListViewItem.ListViewSubItem(); lvSubItem.Text = "DVRDVS-Webs"; item.SubItems.Add(lvSubItem); listView1.Items.Add(item); } System.Object lockThis = new System.Object(); lock(lockThis) { lblCurIp.Text = ip; _currentThreads--; if (_currentThreads < 0) _currentThreads = 0; } } private void tsmCopy_Click(object sender, EventArgs e) { if (listView1.SelectedItems.Count > 0) { string ip = listView1.SelectedItems[0].SubItems[1].Text; Clipboard.SetText(ip); } } private void tsmExport_Click(object sender, EventArgs e) { StreamWriter writer = new StreamWriter(AppDomain.CurrentDomain.BaseDirectory "\export.txt",true); foreach (ListViewItem item in listView1.Items) { string ip=item.SubItems[1].Text; writer.WriteLine(ip); writer.Flush(); } writer.Flush(); writer.Close(); MessageBox.Show("导出成功!"); } private void Form1_FormClosing(object sender, FormClosingEventArgs e) { try { if (mt != null) { mt.Interrupt(); mt.Abort(); } foreach (Thread t in threads) { t.Interrupt(); t.Abort(); } if (main != null) { main.Interrupt(); main.Abort(); } } catch { } Thread.Sleep(5000); } private void btnStop_Click(object sender, EventArgs e) { try { if (mt != null) { mt.Interrupt(); mt.Abort(); } foreach (Thread t in threads) { t.Interrupt(); t.Abort(); } if (main != null) { main.Interrupt(); main.Abort(); } } catch { } btnStart.Enabled = true; } }}
- 2014-06-23下载
- 积分:1
-
OutlookGUI
一个OutLook的界面实现。
(an interface to achieve.)
- 2007-06-05 20:52:22下载
- 积分:1
-
MyPlayer
一个自动播放的软件是非常不错的。。。。。。。。。。(Autoplay Software)
- 2013-03-14 22:09:10下载
- 积分:1
-
STM32F1xx.HAL库手册英文版
STM32F1系列的HAL库函数参考手册(英文原版),HAL编程必备。(STM32F1 series HAL library function reference manual, HAL programming essential.)
- 2018-07-31 11:52:28下载
- 积分:1
-
RightsManage
私募系统的权限系统认证用于登陆后初始化菜单,十分重要(primary future right manage)
- 2016-04-23 16:00:20下载
- 积分:1
-
STM8S_StdPeriph_Lib_V2.1.0
说明: STM8S_StdPeriph_Lib_V2.3.1 驱动包(STM8S_StdPeriph_Lib_V2.3.1 driver package)
- 2019-03-01 11:38:10下载
- 积分:1
-
C4.5算法
说明: C4.5算法的C++实现,含离散化处理,数据在nominal文件里(c4.5 algorithm with c++)
- 2020-04-10 03:26:35下载
- 积分:1
-
yuandongkz
案例 例1_单轴运动 例2_回原点运动 例3_直线插补例4_两轴圆弧插补例5_连续插补例6_手轮运动(VC)例7_通用专用输入输出
- 2014-10-23 17:12:14下载
- 积分:1
-
TimerA3
MSP430F149 定时器A 编程学习(The MSP430F149 Timer A programmed learning)
- 2013-03-13 10:48:16下载
- 积分:1
-
推理机
实现简单推理机功能,主要包括子条件、不确定性、与或及结论的录入,论据的添加,进行正向推理及逆向推理(The function of simple inference engine is realized, which mainly includes the input of sub-conditions, uncertainties, and/or conclusions, the addition of arguments, forward inference and reverse inference.)
- 2019-04-01 16:04:09下载
- 积分:1