![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
BROADCAST [D5, D6]
Kate © (2001-11-27 03:58:00)Как послать BROADCAST все компьютерам в сети и получить от все ответ?
erik (2001-11-27 16:56:00) [1]Через UDP по адресу 255.255.255.255
Fellomena (2001-11-27 12:43:00) [2]мда... вопрос давольно туманный, но если я правильно поняла, то
надо пинговать какой-то квадрант сети на предмет обнаружения работающих
компов. Как это делать быстро- читай в Net-е, статей много.
Самый простой (но и долгий) способ:
{Определяешь класс TMyThread}
type
TMyThread = class(TThread)
private
{ Private declarations }
protected
procedure DoWork();
procedure Execute; override;
end;
В процедуре TMyThread.DoWork() пингуешь комп
Таким образом создаёшь сразу 20 thread-ов (к примеру, можно и больше),
последним параметром при использовании ShellExecute указываешь SW_HIDE,
что бы 20 окошек глаза не мозолили... результаты пинга сбрасываешь в один файл,
не забывая синхронизировать вывод. Ждёшь окончания выполнения N-ого thread-а
и запускаешь следующий. И всего у тебя будет 256 thread-ов 8)
(понятно, что при создании каждого нового thread-а передаёшь значение для
последнего значения ip-шника пингуемого компа, маска следующая (для локалки 8):
192.168.1.* хотя может и другой быть...)