void LoadIPaddress() { this.Cursor = Cursors.WaitCursor; Process netUtility = new Process(); netUtility.StartInfo.FileName = "arp"; netUtility.StartInfo.CreateNoWindow = true; netUtility.StartInfo.Arguments = "-a"; netUtility.StartInfo.RedirectStandardOutput = true; netUtility.StartInfo.UseShellExecute = false; netUtility.StartInfo.RedirectStandardError = true; netUtility.Start(); StreamReader streamReader = new StreamReader(netUtility.StandardOutput.BaseStream, netUtility.StandardOutput.CurrentEncoding); String line = "", pcname = "", ipaddr; streamReader.ReadLine(); streamReader.ReadLine(); //Skipping First 3 Lines streamReader.ReadLine(); while ((line = streamReader.ReadLine()) != null) { if (line.Substring(line.Length - 10, 1) == "d") //Allowing only Dynamic IPs { try { ipaddr = line.Substring(2).Substring(0, line.Substring(2).IndexOf(" ")); pcname = System.Net.Dns.GetHostEntry(ipaddr).ToString(); DGV_LoadUsers.Rows.Add(pcname, ipaddr); } catch { //If no such host found, skip it } } } MessageBox.Show("Done Load final"); streamReader.Close(); netUtility.WaitForExit(1); DGV_LoadUsers.ClearSelection(); this.Cursor = Cursors.Default; }
void LoadIPaddress() { this.Cursor = Cursors.WaitCursor; Process netUtility = new Process(); netUtility.StartInfo.FileName = "net.exe"; netUtility.StartInfo.CreateNoWindow = true; netUtility.StartInfo.Arguments = "view"; netUtility.StartInfo.RedirectStandardOutput = true; netUtility.StartInfo.UseShellExecute = false; netUtility.StartInfo.RedirectStandardError = true; netUtility.Start(); StreamReader streamReader = new StreamReader(netUtility.StandardOutput.BaseStream, netUtility.StandardOutput.CurrentEncoding); string line = ""; while ((line = streamReader.ReadLine()) != null) { if (line.StartsWith("\\")) { try { pcname = line.Substring(2).Substring(0, line.Substring(2).IndexOf(" ")); ipaddr = Dns.GetHostByName(pcname).AddressList[0].ToString(); DGV_LoadUsers.Rows.Add(pcname, ipaddr); } catch { MessageBox.Show("\"" + pcname + "\" is shutdown and creating network issues..\n Please restart system...", "Be Connect+ - Network Issue", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } streamReader.Close(); netUtility.WaitForExit(1); DGV_LoadUsers.ClearSelection(); this.Cursor = Cursors.Default; }