![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
помогите с пингом
linuxoid © (2010-07-12 13:05:00)Здравствуйте.
имеется таблица в базе с ip-адресами. нужно поочередно всех пропинговать.
tablebase.Open;
tablebase.First;
for i:=1 to tablebase.recordcount do begin
adres:=tablebase.fields.Fields[2].AsString;
icmp.Host:=adres;
icmp.Ping();
listbox1.Items.Add('Время до хоста: '+' - '+inttostr(icmp.ReplyStatus.MsRoundTripTime)+'ms')
tablebase.Next;
скажите в чем проблема?
linuxoid (2010-07-12 14:25:00) [81]нужен наилучший вариант кода который проверит на наличие доступности хоста в сети.
Dennis I. Komarov (2010-07-12 14:20:00) [82]
> linuxoid (12.07.10 13:48) [6]
А зачем?
Dennis I. Komarov (2010-07-12 14:18:00) [83]
> 12 © (12.07.10 14:06) [14]
Воробьев не жалко?
12 (2010-07-12 14:06:00) [84]ассинхронный режим
linuxoid (2010-07-12 14:05:00) [85]ну и как это можно решить?
я с ProcessMessages; не работал
Dennis I. Komarov (2010-07-12 14:03:00) [86]ProcessMessages; И куда бы ее поставить???
linuxoid (2010-07-12 14:00:00) [87]end есть. забыл дописать.
tablebase.Open;
tablebase.First;
for i:=1 to tablebase.recordcount do begin
adres:=tablebase.fields.Fields[2].AsString;
icmp.Host:=adres;
icmp.Ping();
listbox1.Items.Add('Время до хоста: '+' - '+inttostr(icmp.ReplyStatus.MsRoundTripTime)+'ms')
tablebase.Next;
end;
если же в базу много хостов, то программа просто зависает.
когда использовал массив adres[i] программа поочередно пинговала хосты и добавляла в листбокс. а вот с базой проблемы.
Anatoly Podgoretsky (2010-07-12 13:57:00) [88]Свидетель постоянно путал показания.
Anatoly Podgoretsky (2010-07-12 13:56:00) [89]
> хотелось бы чтоб она как пропингует один хост и сразу же
> добавил б отчет в листбокс. а вместо этого она пингует
> все хосты потом тока добавляет все отчеты в листбокс.
Онад добавляет в отчет строку за строкой, просто ты не обрабатываешь сообщения и тебе кажется, что потом.
Медвежонок Пятачок (2010-07-12 13:54:00) [90]хотелось бы чтоб она как пропингует один хост и сразу же добавил б отчет в листбокс.
"она" в приведенном коде именно так и делает.
Юрий Зотов (2010-07-12 13:52:00) [91]
> linuxoid (12.07.10 13:48) [6]
1. Есть begin, а где end к нему? Похоже, не в том месте, где надо.
2. Не используйте RecordCount. См. [5].
linuxoid (2010-07-12 13:48:00) [92]хотелось бы чтоб она как пропингует один хост и сразу же добавил б отчет в листбокс. а вместо этого она пингует все хосты потом тока добавляет все отчеты в листбокс.
Anatoly Podgoretsky (2010-07-12 13:42:00) [93]используй while not eof
linuxoid (2010-07-12 13:33:00) [94]точнее зависает при поочередном переборе
linuxoid (2010-07-12 13:29:00) [95]не перебирает по строкам.
Anatoly Podgoretsky (2010-07-12 13:28:00) [96]> linuxoid (12.07.2010 13:05:00) [0]
А у тебя есть проблема?
Dennis I. Komarov (2010-07-12 13:19:00) [97]На сосне висят два банана.
скажите в чем проблема?