Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.30;
Скачать: CL | DM;

Вниз

Как сделать пинг компьютера?   Найти похожие ветки 

 
kerrik ©   (2002-11-02 00:31) [0]

Как сделать пинг компьютера?


 
Пасечник ©   (2002-11-02 00:41) [1]

Библиотечка ICS...


 
Nikolas SHmuS   (2002-11-02 13:11) [2]

Вот пример!! вроде даже с этого ж сайта......

procedure TForm1.Button1Click(Sender: TObject);
var
hIP : THandle;
pingBuffer : array [0..31] of Char;
pIpe : ^icmp_echo_reply;
pHostEn : PHostEnt;
wVersionRequested : WORD;
lwsaData : WSAData;
error : DWORD;
destAddress : In_Addr;
begin

// Создаем handle
hIP := IcmpCreateFile();

GetMem( pIpe,
sizeof(icmp_echo_reply) + sizeof(pingBuffer));
pIpe.Data := @pingBuffer;
pIpe.DataSize := sizeof(pingBuffer);

wVersionRequested := MakeWord(1,1);
error := WSAStartup(wVersionRequested,lwsaData);
if (error <> 0) then
begin
Memo1.SetTextBuf("Error in call to "+
"WSAStartup().");
Memo1.Lines.Add("Error code: "+IntToStr(error));
Exit;
end;

pHostEn := gethostbyname("delphi.mastak.com");
error := GetLastError();
if (error <> 0) then
begin
Memo1.SetTextBuf("Error in call to"+
"gethostbyname().");
Memo1.Lines.Add("Error code: "+IntToStr(error));
Exit;
end;

destAddress := PInAddr(pHostEn^.h_addr_list^)^;

// Посылаем ping-пакет
Memo1.Lines.Add("Pinging " +
pHostEn^.h_name+" ["+
inet_ntoa(destAddress)+"] "+
" with "+
IntToStr(sizeof(pingBuffer)) +
" bytes of data:");

IcmpSendEcho(hIP,
destAddress.S_addr,
@pingBuffer,
sizeof(pingBuffer),
Nil,
pIpe,
sizeof(icmp_echo_reply) + sizeof(pingBuffer),
5000);

error := GetLastError();
if (error <> 0) then
begin
Memo1.SetTextBuf("Error in call to "+
"IcmpSendEcho()");
Memo1.Lines.Add("Error code: "+IntToStr(error));
Exit;
end;

// Смотрим некоторые из вернувшихся данных
Memo1.Lines.Add("Reply from "+
IntToStr(LoByte(LoWord(pIpe^.Address)))+"."+
IntToStr(HiByte(LoWord(pIpe^.Address)))+"."+
IntToStr(LoByte(HiWord(pIpe^.Address)))+"."+
IntToStr(HiByte(HiWord(pIpe^.Address))));
Memo1.Lines.Add("Reply time: "+IntToStr(pIpe.RTTime)+" ms");

IcmpCloseHandle(hIP);
WSACleanup();
FreeMem(pIpe);
end;




Страницы: 1 вся ветка

Текущий архив: 2002.12.30;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
1-99070
Darlock
2002-12-19 14:50
2002.12.30
Контролы с плоским интерфейсом


4-99408
EminEM2
2002-11-12 05:38
2002.12.30
Расскажите про Wparam и Lparam


7-99371
RETAND
2002-10-21 21:00
2002.12.30
Сделать мою форму как рабочий стол


8-99204
UsBall
2002-08-28 22:59
2002.12.30
Захват видео.


1-99173
Dinara
2002-12-17 18:39
2002.12.30
Как поменять шрифт отображения у TMainMenu?