C#网络计费与监控系统的设计与实现+流程图(13)
时间:2017-01-16 20:05 来源:毕业论文 作者:毕业论文 点击:次
{ string username=dr["username"].ToString().Trim(); string name=this.UserName.Text; if (username == name) { string mima1=dr["userpwd"].ToString().Trim(); string mima2=this.Mima.Text; if(mima1==mima2) { string zhiwu1=dr["usertype"].ToString().Trim(); if (zhiwu1 == "False") { F1.IsAdmin = false; F1.userName = username; F1.Show();UserName.Text = "";Mima.Text = "";UserType.Text = ""; this.Hide(); } else if (zhiwu1 == "True") { F1.IsAdmin = true; F1.userName = username; F1.Show(); UserName.Text = ""; Mima.Text = ""; UserType.Text = ""; this.Hide(); else { MessageBox.Show("您输入的用户名、密码或用户类型有误!\n 请确认后重新输入!","警 告",MessageBoxButtons.OK,MessageBoxIcon.Error); UserName.Text=""; Mima.Text=""; UserType.Text=""; UserName.Focus(); } MyData.MySQL.CloseSQL(); } 4.2 系统主界面 用户在主界面可以选择各项操作:文件中只有退出,退出也可使用快捷键ctrl+x。选项中为系统设置页面,点击进入管理员设置页面。流量中为流量统计,点击进入流量查询界面,可以看到用户使用网络的数据统计。帮助中为系统及编写者相关信息。在主界面中可以实时对网络中数据动态进行观察,屏幕中的数据会在设置的周期内进行整理存入数据库,并清空主界面中的数据进行下一次数据收集整理。 图 4.2系统主界面 数据采集功能被放置在了系统主界面中,这样登录成功后就可以看到数据采集包的数据。 数据采集功能代码如下: public partial class MainForm : Form { public MainForm() { InitializeComponent(); } private void MainForm_Load(object sender, EventArgs e) { System.Windows.Forms.ListView.CheckForIllegalCrossThreadCalls = false; //初始化lvSniffInfo控件的列信息 lvSniffInfo.Columns.Add("协议", 50, System.Windows.Forms.HorizontalAlignment.Center); lvSniffInfo.Columns.Add("源地址", 100, System.Windows.Forms.HorizontalAlignment.Center); lvSniffInfo.Columns.Add("目的地址", 100, System.Windows.Forms.HorizontalAlignment.Center); lvSniffInfo.Columns.Add("源端口", 50, System.Windows.Forms.HorizontalAlignment.Center); lvSniffInfo.Columns.Add("目的端口", 80, System.Windows.Forms.HorizontalAlignment.Center); lvSniffInfo.Columns.Add("时间", 150, System.Windows.Forms.HorizontalAlignment.Center); //需添加System.Management引用 string sqlStr = "SELECT * FROM Win32_NetworkAdapterConfiguration"; ManagementObjectSearcher query1 = new ManagementObjectSearcher(sqlStr);//搜寻WMI类别 ManagementObjectCollection queryCollection1 = query1.Get();//获取各种管理对象集合 string[] IPString = new string[10]; int x = 0; string[] temp; mySniffSocket = new SniffSocket(); foreach (ManagementObject mo in queryCollection1)//获取本地的网络配置 { temp = mo["IPAddress"] as string[]; if (temp != null) { foreach (string st in temp) { IPString[x] = st; x++; } } } for (int y = 0; y < x; y++)//为组合框添加列表项 { if (IPString[y] != "") cmbIpList.Items.Add(IPString[y]); } cmbIpList.Text = cmbIpList.Items[0] as string; try { mySniffSocket.CreateAndBindSocket(cmbIpList.Text);//创建和绑定Socket连接 } catch (SniffSocket.SniffSocketException ex) (责任编辑:qin) |