void EndConnect(IAsyncResult ar) { try { Socket s = ar.AsyncState as Socket; s.EndConnect(ar); if (s.Connected) { string ipAddress = s.RemoteEndPoint.ToString().Split(':')[0]; IPItem item = new IPItem(); item.IP = ipAddress; ListIP.Add(item); s.Disconnect(true); cbbIPLIST.DataSource = ListIP; } } catch (Exception) { } }
private void Parse(string ipList, string note) { string[] ipArray = ipList.Split(",".ToCharArray(), StringSplitOptions.RemoveEmptyEntries); foreach (var ipItem in ipArray) { IPItem ipInfo; if (!ipItem.Contains("-")) { //single ip ipInfo = new IPItem(ipItem.Trim(), note); } else { //ip range string[] ipPair = ipItem.Split("-".ToCharArray()); Util.Check.Ensure(ipPair.Length == 2, "Invalid IP range format"); ipInfo = new IPItem(ipPair[0].Trim(), ipPair[1].Trim(), note); } _list.Add(ipInfo); } }