您的位置:首页 > 理论基础

调用第三方程序Ping同局域网计算机和得到其Mac

2006-02-01 17:43 447 查看
调用Ping命令获取网络连接情况:

<%@import namespace="System.Diagnostics"%>

private void Submit_Click(Object sender, EventArgs e)
{
for(int i=0;i<100;i++){
Response.Write(CmdPing("172.20.185.210")+"<br>");
Response.Write(CmdPing("172.20.185.254")+"<br>");
}
}

private string CmdPing(string strIp)
{
//实例Process类,启动独立进程.
Process pro=new Process();
//设定程序名
pro.StartInfo.FileName="cmd.exe";

pro.StartInfo.UseShellExecute=false;
pro.StartInfo.RedirectStandardInput=true;
pro.StartInfo.RedirectStandardOutput=true;
pro.StartInfo.RedirectStandardError=true;

//启动进程
pro.Start();
//输入要执行命令
pro.StandardInput.WriteLine("ping -n 1 "+strIp);
pro.StandardInput.WriteLine("exit");
//从输出流获取执行结果(从流当前位置读到流末尾)
string temp=pro.StandardOutput.ReadToEnd();

//分析各种情况
string result;

//字串中含有"(0% loss)"字串
if(temp.IndexOf("(0% loss)")!=-1)
result="能连接!!";
else if(temp.IndexOf("Destination host unreachable.")!=-1)
result="无法到达目的主机";
else if(temp.IndexOf("Request timed out.")!=-1)
result="超时";
else if(temp.IndexOf("Unknown host")!=-1)
result="无法解析主机";
else
result=temp;

//释放资源,返回数据.
pro.Close();
return result;
}

得到本机或别机Mac:
//Process类位于System.Diagnostics名称空间.

<%@import namespace="System.Diagnostics"%>

<asp:button Text="Submit" OnClick="Submit_Click" runat="server"/>
private void Submit_Click(Object obj,EventArgs e){
Response.Write(GetMac("172.20.177.18"));
}

private string GetMac(string IP)
{
try{
//将使用Process类Start方法启动新程序
Process pro=new Process();

//指定启动进程时使用的一组值
pro.StartInfo.FileName="nbtstat"; //启动程序名
pro.StartInfo.Arguments="-a "+IP; //传递参数

pro.StartInfo.UseShellExecute=false;
pro.StartInfo.RedirectStandardInput=false;
pro.StartInfo.RedirectStandardOutput=true;
pro.Start();

string line="";
//如果含有"mac address",则跳出循环.
while(line.IndexOf("mac address",0)<0){
line=pro.StandardOutput.ReadLine(); //读取一行输出.
line=line.Trim().ToLower(); //去除空格并小写.
}
pro.WaitForExit();//无限期地等待关联进程退出
return line;
}
catch(Exception err){
return err.Message;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐