Я работаю над приложением pinging, в котором у меня есть индикатор выполнения, который отображает ход проверки ping для диапазона IP-адресов.
Вот как я вычисляю диапазон IP-адресов, чтобы установить в качестве максимального значения для индикатора выполнения:
pbProgress.Maximum = 1 + (IPAddress.NetworkToHostOrder
(BitConverter.ToInt32(IPAddress.Parse(txtTo.Text).GetAddressBytes(), 0)) -
IPAddress.NetworkToHostOrder(BitConverter.ToInt32
(IPAddress.Parse(txtFrom.Text).GetAddressBytes(), 0)));
Проблема здесь в том, что я помещаю диапазон, начиная с 0.0.0.0 до 1.0.0.0, для вычисления диапазона требуется очень много времени, поэтому передается значение в максимальное значение индикатора выполнения.Есть ли лучшее решение для более быстрого расчета количества IP-адресов?
Я всегда могу установить ограничение на количество IP-адресов для пинга, например, до 10 тыс. Адресов, но я просто не хочу ограничивать какие-либо функции этой программы..
Есть идеи?