
void GetAll() { IDictionary < string , string > hostList = new Dictionary< string , string > (); DirectoryEntry MainGroup = new DirectoryEntry( " WinNT: " ); foreach (DirectoryEntry domain in MainGroup.Children) { foreach (DirectoryEntry pc in domain.Children) { try { System.Net.IPAddress[] remoteHost = Dns.GetHostAddresses(pc.Name); hostList.Add(pc.Name, remoteHost[ 0 ].ToString()); } catch { } } } using (StreamWriter sw = new StreamWriter( " c:\\pp.txt " , true )) { foreach (KeyValuePair< string , string > child in hostList) { sw.WriteLine(Environment.NewLine + " name: " + child.Key + " ip: " + child.Value); } sw.Flush(); sw.Close(); } }
以上把局域網(wǎng)的計(jì)算機(jī)以及IP保存到c盤
再根據(jù)ip地址獲取mac地址

public string GetMac( string IP) { string dirResults = "" ; ProcessStartInfo psi = new ProcessStartInfo(); Process proc = new Process(); psi.FileName = " nbtstat " ; psi.RedirectStandardInput = false ; psi.RedirectStandardOutput = true ; psi.Arguments = " -A " + IP; psi.UseShellExecute = false ; proc = Process.Start(psi); dirResults = proc.StandardOutput.ReadToEnd(); proc.WaitForExit(); dirResults = dirResults.Replace( " \r " , "" ).Replace( " \n " , "" ).Replace( " \t " , "" ); Regex reg = new Regex( " Mac[ ]{0,}Address[ ]{0,}=[ ]{0,}(?<key>((.)*?))__MAC " , RegexOptions.IgnoreCase | RegexOptions.Compiled); Match mc = reg.Match(dirResults + " __MAC " ); if (mc.Success) { return mc.Groups[ " key " ].Value; } else { reg = new Regex( " Host not found " , RegexOptions.IgnoreCase | RegexOptions.Compiled); mc = reg.Match(dirResults); if (mc.Success) { return " Host not found! " ; } else { return "" ; } } }
需要的稍作更改即可使用
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
