Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Поиск компьютеров [D7, WinXP]


Ralf ©   (2004-10-09 23:21:00) 

Каким образом можно найти в локалной сети все компьютеры, которые в данный момент включены.


Дмитрий Ботвин   (2004-10-11 15:29:00) [1]

Вот так более универсально: http://www.delphimaster.ru/cgi-bin/forum.pl?id=1094570963&n=4


Colonel   (2004-10-10 02:40:00) [2]

Способов вообще много. Можно использовать TPowerSock, TNMEcho.
Делаешь цикл, в котором создаешь диапозон IPи коннектишься к ним, если коннект есть - значит комп в сети.
что-то типа:

type
 Tmain = class(TForm)
 Powersock1: TPowersock;
 ....

var
 ip:array [0..255] of byte;
 ...

implementation

далее, если знаешь диапозон первых 3 байт, то просто делаешь так
procedure ...
var
 i:byte;
begin
 for i:=0 to ip[255] do begin
 powersock1.Host:='192.168.8.'+ip[i];
 try
   powersock1.Connect;
 finally
   if powersock1.Connected
     then begin
            .....
            ps.Disconnect;
          end
     else begin
            .....            
            abort;
          end;
 end;
end;
end;
end;


Ну и в таком же духе.

P.S: Код не проверял, написал из головы.


P@$l-l0l-(   (2004-10-10 02:33:00) [3]

Вот это интересный вопрос, хотел бы тоже узнать ответ на него.


Наверх

Титульная страница Поиск, карта сайта Написать письмо