• 大小: 111KB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-04-04
  • 语言: C#
  • 标签: C#  ping  工具  

资源简介

在网络不稳定时,经常会通过PING来看网速!自作了C#PING工具。 主要功能: ping 指定网址或IP。自动记录ping的信息,下次启动自动开启。 显示当前ping值和平均ping值。还有连接失败的错误率。 可选中列表,使用CTRL + C 键复制ping的结果。 界面如下: 工具下载:http://files.cnblogs.com/zjfree/NetPing.rar 源码下载:http://files.cnblogs.com/zjfree/NetPing_src.rar 开发环境:WIN2003 + VS2005 + .NET2.0 + C#

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Net.NetworkInformation;
using System.Threading;
using System.Net;
using System.IO;

namespace NetPing
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private AutoResetEvent waiter = new AutoResetEvent(false);
private Ping ping = new Ping();
private int pingIndex = 0;
private string curUrl = ““;
private string MyIp = ““;

private void Form1_Load(object sender EventArgs e)
{
backgroundWorker1.RunWorkerAsync();
ImageList l = new ImageList();
l.ImageSize = new Size(1 23);
listData.SmallImageList = l;
ping.PingCompleted += new PingCompletedEventHandler(ping_PingCompleted);
string strUrl = Properties.Settings.Default.strUrl;
string[] strs = strUrl.Split(‘‘);
foreach (string r in strs)
{
AddPing(r);
}
}

private void btnPing_Click(object sender EventArgs e)
{
txtPing.Text = txtPing.Text.Trim().ToLower();
if (txtPing.Text == ““)
{
txtPing.Focus();
return;
}

AddPing(txtPing.Text);

txtPing.Text = ““;
txtPing.Focus();
}

private void AddPing(string url)
{
if (url == ““)
{
return;
}
foreach (ListViewItem r in listData.Items)
{
if (r.Text == url)
{
return;
}
}
ListViewItem item = new ListViewItem();
item.Tag = “0|0“;
item.UseItemstyleForSubItems = false;
item.Text = url;
item.SubItems.Add(“-“);
item.SubItems.Add(“0“);
item.SubItems.Add(“0“);
item.SubItems.Add(“0/0 100%“);
listData.Items.Add(item);

if (listData.Items.Count == 1)
{
runPing();
}
SaveUrl();
}

private void SaveUrl()
{
string strUrl = ““;
foreach (ListViewItem r in listData.Items)
{
strUrl += r.Text + ““;
}
Properties.Settings.Default.strUrl = strUrl.Trim(‘‘);
Properties.Settings.Default.Save();
}

private void runPing()
{
if (listData.Items.Count == 0)
{
return;
}

pingIndex++;
if (pingIndex >= listData.Items.Count)
{
pingIndex = 0;
}
if (listData.Items.Count < 5)
{
Thread.Sleep(100);
}
curUrl = listData.Items[pingIndex].Text;
ping.SendAsync(curUrl waiter);
}

private void ping_PingCompleted(object sender PingCompletedEventArgs e)
{
ListViewItem item = null;
foreach (ListViewItem r in listData.Items)
{
if (r.Text == curUrl)
{
item = r;
break;
}
}
if (item != null)
{
long l = 10000;
bool isError = true;
if (!e.Cancelled && e.Error == null && e.Reply.Status == IPStatus.Success)
{
item.SubItems[1].Text = e.Reply.Address.ToString();
l = e.Reply.RoundtripTime;
isError = false;
}
if (l > 9999)
{

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        790  2012-02-21 16:14  Backup\NetPing\app.config

     文件       5326  2012-02-22 10:26  Backup\NetPing\Form1.cs

     文件       6157  2012-02-22 10:24  Backup\NetPing\Form1.Designer.cs

     文件       6019  2012-02-22 10:24  Backup\NetPing\Form1.resx

     文件       3256  2012-02-21 16:14  Backup\NetPing\NetPing.csproj

     文件        388  2012-02-21 14:25  Backup\NetPing\Program.cs

     文件       1172  2012-02-21 14:25  Backup\NetPing\Properties\AssemblyInfo.cs

     文件       2522  2012-02-21 14:25  Backup\NetPing\Properties\Resources.Designer.cs

     文件       5612  2012-02-21 14:25  Backup\NetPing\Properties\Resources.resx

     文件       1530  2012-02-21 16:14  Backup\NetPing\Properties\Settings.Designer.cs

     文件        404  2012-02-21 16:14  Backup\NetPing\Properties\Settings.settings

     文件        910  2012-02-21 14:25  Backup\NetPing.sln

    ..A..H.     22016  2012-02-22 10:28  Backup\NetPing.suo

     文件        790  2012-02-21 16:14  NetPing\app.config

     文件      15360  2012-05-12 18:16  NetPing\bin\Debug\NetPing.exe

     文件        790  2012-02-21 16:14  NetPing\bin\Debug\NetPing.exe.config

     文件      36352  2012-05-12 18:16  NetPing\bin\Debug\NetPing.pdb

     文件      11608  2012-05-12 18:17  NetPing\bin\Debug\NetPing.vshost.exe

     文件        790  2012-02-21 16:14  NetPing\bin\Debug\NetPing.vshost.exe.config

     文件      14848  2012-05-12 18:17  NetPing\bin\Release\NetPing.exe

     文件        790  2012-02-21 16:14  NetPing\bin\Release\NetPing.exe.config

     文件      34304  2012-05-12 18:17  NetPing\bin\Release\NetPing.pdb

     文件      11608  2012-05-12 18:24  NetPing\bin\Release\NetPing.vshost.exe

     文件        790  2012-02-21 16:14  NetPing\bin\Release\NetPing.vshost.exe.config

     文件        490  2010-03-17 22:39  NetPing\bin\Release\NetPing.vshost.exe.manifest

     文件       5326  2012-02-22 10:26  NetPing\Form1.cs

     文件       6157  2012-02-22 10:24  NetPing\Form1.Designer.cs

     文件       6019  2012-02-22 10:24  NetPing\Form1.resx

     文件       3693  2012-05-12 18:12  NetPing\NetPing.csproj

     文件       5383  2012-05-12 18:16  NetPing\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache

............此处省略51个文件信息

评论

共有 条评论