▍1. icmp_jiance
利用ICMP实现网络状态监测系统,描述了系统架构,实现方法、优缺点等。(Use ICMP network status monitoring system, describes the system architecture, implementation methods, advantages and disadvantages.)
利用ICMP实现网络状态监测系统,描述了系统架构,实现方法、优缺点等。(Use ICMP network status monitoring system, describes the system architecture, implementation methods, advantages and disadvantages.)
基于Winpcap的网络数据包抓取.开发环境VS2013(network packet capture based on Winpcap . Development environment: VS2013)
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; } }}
买RN8302,卖家给的程序,看起来挺好的,下载看看呗(Buy RN8302, the seller gave the program looks very good, and download to see the pictures)
仿照飞信,网络编程。像飞信一样,自由添加客户端用户。(Modeled Fetion, network programming.)
aceonline 服务端启动工具,可以隐藏小窗口。(aceonline server start tool)
用socket实现客户端服务器上传下载传输文件(use socket download file)
功能模块的详细说明如下: 1)用户信息管理模块。本模块用于管理用户相关信息。 本系统用户按不同的角色分为三组:普通用户、操作员用户和管理员用户。系统按不同的角色提供不同的功能界面。每个用户均可维护个人信息和密码,使用系统前须登录。普通用户仅能进入系统查询、维护个人信息;操作员用户能进行所有人事信息的管理操作;管理员用户能对其他用户进行授权管理。 2)系统配置管理模块是管理系统的各项配置信息,如添加修改用户。用户通过登录并且为操作员用户或管理员用户身份方可进入本功能界面。 3)组织机构管理模块能管理单位的组织架构。如:教育局下属科室、学校。 应包含:单位的描述信息,部门职能设置和部门间的关系。考虑到将来的扩展,应能将本单位的组织机构信息导出为XML文件。 4)人事信息管理功能是本系统的核心。它能提供对在职员工、解聘员工、离退员工等的档案管理功能。本系统人事异动管理包含以下功能:提供对员工岗位调配、晋升、辞职等业务处理 5)考虑到各单位现有操作人员的实际情况,结合手工处理流程,形成的统计数据能形成Excel文档。
实现通用的程序升级功能,可以检查是否有更新,下载更新(Achieve universal upgrade feature, you can check for updates, download updates)