C#获取指定IP的主机名
来源:互联网 发布:mac怎么看文件夹路径 编辑:程序博客网 时间:2024/05/16 19:44
以下代码在visiual studio 2003下调试通过。
方法一:使用GetHostByAddress函数
string mystartIP = "222.206.84."; // IP地址
string myip;
int s;
string name;
for(s = 1; s <= 125; s++) //IP地址开始和结束
{
myip = mystartIP + s.ToString();
//转换IP地址
IPAddress myscanip = IPAddress.Parse(myip);
try
{
IPHostEntry myscanhost = Dns.GetHostByAddress(myscanip);
name = myscanhost.HostName.ToString();
this.listBox1.Items.Add(myip + " " + name);
}
catch
{
}
方法二:开启进程,调用nbtstat命令,通过分析该命令的执行结果获得指定IP的主机名。
public static string GetRemoteHostByNetBIOS(string clientIP)
{
string ip = clientIP;
string dirResults = "";
char[] hostResult;
string Result;
ProcessStartInfo psi = new ProcessStartInfo();
Process proc = new Process();
psi.FileName = "nbtstat.exe";
psi.Arguments = "-A " + ip;
psi.UseShellExecute = false;
psi.RedirectStandardInput = true;
psi.RedirectStandardOutput = true;
psi.RedirectStandardError = true;
psi.RedirectStandardError = true;
proc = Process.Start(psi);
dirResults = proc.StandardOutput.ReadToEnd();
proc.WaitForExit();
hostResult = new char[(dirResults.IndexOf("<")-dirResults.IndexOf("-/r/r/n")-8)]; //后面4个空格加4个"-/r/r/n"字符
dirResults.CopyTo(dirResults.IndexOf("-/r/r/n") + 8, hostResult, 0, dirResults.IndexOf("<") - dirResults.IndexOf("-/r/r/n") - 8);
Result = new string(hostResult);
return Result;
}
转自:http://ttgoup.blog.hexun.com/14750646_d.html
- C#获取指定IP的主机名
- IP主机名的获取
- C#获得客户端的IP,主机名 获取当前时间
- C# 获取主机对应的IP地址和主机名
- 根据主机名获取PC的IP地址
- VC 获取机器的Ip和主机名
- 获取局域网的ip和主机名
- 根据获取的主机名显示ip地址
- 获取局域网的主机名和ip
- 主机名、域名、IP、MAC地址的获取
- 批量获取主机名对应的ip地址
- java中IP地址、主机名的获取
- 根据主机名获取IP
- 获取主机名,IP
- 获取主机名和IP
- 获取主机名和IP
- C#通过ARP获取指定IP的MAC地址
- C#通过ARP获取指定IP的MAC地址
- Gearman协议(翻译)
- Test:测试下AIR浏览器发博客
- FFMpeg中apiexample.c例子分析——编码分析
- Spring3表达式语言(SpEL)学习笔记
- 正确使用优化的win7
- C#获取指定IP的主机名
- 如何提高英文的科研写作能力
- 怎样掌握写好英语科技论文的诀窍
- 方法重写
- MathLibrary , about in C Library
- 关于数据库连接字符串问题(第一部分连接SQL Server 2008)
- 使用NLog为Silverlight增加日志记录功能
- Reading Response of Component Configurator in POSA2
- RHEL 5安装arm-linux-gcc-4.4.3.tar.gz后,编译报/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found 错,解决办法!