资源简介
获得局域网内IP和MAC的C#代码,通过ping测试是否存在有效ip,若存在则获取其mac地址

代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Net.NetworkInformation;
using System.Runtime.InteropServices;
namespace ping
{
public partial class frmMain : Form
{
[DllImport(“ws2_32.dll“)]
private static extern int inet_addr(string cp);
[DllImport(“IPHLPAPI.dll“)]
private static extern int SendARP(Int32 DestIP Int32 SrcIP ref Int64 pMacAddr ref Int32 PhyAddrLen);
public frmMain()
{
InitializeComponent();
}
private void btnStart_Click(object sender EventArgs e)
{
txtResult.Text = ““;
for (int i = int.Parse(txtStart.Text); i <= int.Parse(txtEnd.Text); i++)
{
string ipAddress = txtIpHead.Text + “.“ + i.ToString();
Application.DoEvents();
if (doPing(ipAddress))
{
txtResult.Text =txtResult.Text+ ipAddress + “... ... Success“+“ “+GetMacAddress(ipAddress)+“\r\n“;
}
else
{
txtResult.Text = txtResult.Text + ipAddress + “... ... Fail“ + “\r\n“;
}
}
}
public bool doPing(string ipAddress)
{
Ping ping = new Ping();
PingReply pingReply = ping.Send(ipAddress);
if (pingReply.Status == IPStatus.Success)
{
return true;
}
else
{
return false;
}
}
private string GetMacAddress(string hostip)//获取远程IP(不能跨网段)的MAC地址
{
string Mac = ““;
try
{
Int32 ldest = inet_addr(hostip); //将IP地址从 点数格式转换成无符号长整型
Int64 macinfo = new Int64();
Int32 len = 6;
SendARP(ldest 0 ref macinfo ref len);
string TmpMac = Convert.ToString(macinfo 16).PadLeft(12 ‘0‘);//转换成16进制 注意有些没有十二位
Mac = TmpMac.Substring(0 2).ToUpper();//
for (int i = 2; i < TmpMac.Length; i = i + 2)
{
Mac = TmpMac.Substring(i 2).ToUpper() + “-“ + Mac;
}
}
catch (Exception Mye)
{
Mac = “获取远程主机的MAC错误:“ + Mye.Message;
}
return Mac;
}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 187 2018-02-05 20:57 ping\ping\App.config
文件 10752 2018-02-05 21:42 ping\ping\bin\Debug\ping.exe
文件 187 2018-02-05 20:57 ping\ping\bin\Debug\ping.exe.config
文件 26112 2018-02-05 21:42 ping\ping\bin\Debug\ping.pdb
文件 24224 2018-02-05 21:43 ping\ping\bin\Debug\ping.vshost.exe
文件 187 2018-02-05 20:57 ping\ping\bin\Debug\ping.vshost.exe.config
文件 490 2014-01-13 21:31 ping\ping\bin\Debug\ping.vshost.exe.manifest
文件 2799 2018-02-05 21:42 ping\ping\frmMain.cs
文件 5088 2018-02-05 21:42 ping\ping\frmMain.Designer.cs
文件 5817 2018-02-05 21:42 ping\ping\frmMain.resx
文件 865 2018-02-05 20:57 ping\ping\obj\Debug\DesignTimeResolveAssemblyReferences.cache
文件 7051 2018-02-05 21:20 ping\ping\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 845 2018-02-05 21:43 ping\ping\obj\Debug\ping.csproj.FileListAbsolute.txt
文件 979 2018-02-05 21:42 ping\ping\obj\Debug\ping.csproj.GenerateResource.Cache
文件 2211 2018-02-05 21:05 ping\ping\obj\Debug\ping.csprojResolveAssemblyReference.cache
文件 10752 2018-02-05 21:42 ping\ping\obj\Debug\ping.exe
文件 180 2018-02-05 21:42 ping\ping\obj\Debug\ping.frmMain.resources
文件 26112 2018-02-05 21:42 ping\ping\obj\Debug\ping.pdb
文件 180 2018-02-05 21:05 ping\ping\obj\Debug\ping.Properties.Resources.resources
文件 0 2018-02-05 20:57 ping\ping\obj\Debug\TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
文件 0 2018-02-05 20:57 ping\ping\obj\Debug\TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
文件 0 2018-02-05 20:57 ping\ping\obj\Debug\TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
文件 3798 2018-02-05 21:05 ping\ping\ping.csproj
文件 518 2018-02-05 20:57 ping\ping\Program.cs
文件 1350 2018-02-05 20:57 ping\ping\Properties\AssemblyInfo.cs
文件 2860 2018-02-05 20:57 ping\ping\Properties\Resources.Designer.cs
文件 5612 2018-02-05 20:57 ping\ping\Properties\Resources.resx
文件 1091 2018-02-05 20:57 ping\ping\Properties\Settings.Designer.cs
文件 249 2018-02-05 20:57 ping\ping\Properties\Settings.settings
文件 981 2018-02-05 20:57 ping\ping.sln
............此处省略13个文件信息
- 上一篇:WinForm复制粘贴图片
- 下一篇:C#做的SMTP邮件收发程序
相关资源
- C# TIP文件生成和拆解
- 020ASP.NET车辆综合管理系统.zip
- SIPSorcery通讯
- C#获取并连接wifi(基于NativeWifi)
- C# 获取所有网卡IP信息
- 获取本机信息(IP操作系统计算机名)
- Unity摄像机分辨率自适应设计尺寸脚本
- C# 获取本地的IP地址
- 寿星万年历的c#实现版本sxtwl_csharp_t
- 本机多进程相互访问Pipe
- Tcp/ip socket 服务器/客户端
- TCP/IP通讯 (附服务端以及客户端)
- 局域网IP扫描工具及源码
- C# SIP
- udp通讯(需修改客户端链接服务端时
- C#版飞鸽传书
- HMI-with-WPF-part-3-Communication-with-multipl
- 松下PLC与C#通讯串口调试入门教程.z
- SuperPuTTY-1.4.0.8.zip
- C# 使用GDI+绘制漂亮的ToolTip控件
- Rony.DotNetCore.Solution.zip
- zw_ASP.NET通用权限管理系统源代码含文
- 24652561RevitWPFAddin.zip
- C# 24个经典小游戏源码.zip
- 自动搜索代理IP的浏览器(再次废弃)
- IP地址控件C#版
- LMI3D相机连接LMIHalconAcqTest.zip
- MaterialDesignInDome.zip
- de4dot-强大C#DLL反编译反混淆工具.zip
- C# PIng IP
评论
共有 条评论