Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Программирование под Windows > C++ Builder
Перезагрузить страницу Помогите с Ping
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
bacho_sun bacho_sun вне форума
Member
 
Сообщений: 37
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 08.06.2005
По умолчанию Помогите с Ping - 01.02.2006, 16:29

Вот взял за пример Пинг который дан в самом Builder С++ 6.0 с использованием компонента IdIcmpClient1.

Все бы хорошо, но когда я делаю пинг не существующего имени компьютера в локальной сети - например: ping dionis


То вместо того, чтобы выдать обычное сообщение что компьютера нет - не отвечает 0.0.0.0.... он выдает ошибку Socket Error Process Stopped и виснет


Как быть, что сделать чтобы просто выдавало сообщение о 0.0.0.0 или ничего не выдовало..но не выкидывало это ошибку.


Сделал так

Код:
try 

{

ICMP->Host = edtHost->Text;



ICMP->Ping();



Application->ProcessMessages();

// Sleep(1000);

}

catch(ESocketError &SocketError)

{

return;

}

//ErrorCode=0;
Но все равно тоже самое

Помогите конкретным примером по мере возможности пожалуйста
Ответить с цитированием
  (#2 (permalink)) Старый
Z_Ilya Z_Ilya вне форума
Новичок
 
Сообщений: 11
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 03.10.2005
По умолчанию 08.02.2006, 18:12

попробуй не ping dionis
а ping 192.168.1.1

тогда результат можно будет получить в событии OnReply
Ответить с цитированием
  (#3 (permalink)) Старый
FataLL FataLL вне форума
Member
 
Аватар для FataLL
 
Сообщений: 1,783
Сказал(а) спасибо: 2
Поблагодарили 25 раз(а) в 25 сообщениях
Регистрация: 04.11.2004
По умолчанию 09.02.2006, 04:32

В EHost пишу dionis
Код:
    ICMP->Host = EHost->Text;
    try
    {
        ICMP->Ping();
    }
    catch(...)
    {
        MResult->Lines->Add( "No request from " + ICMP->Host );
    }
и все прекрасно работает, т.е. catch срабатывает, и в Memo (MResult) заносится строка "No request from dionis". Не забывай, что при запуске программы из Builder'а, будет срабатывать его обработчик исключительных ситуаций, т.е. сообщение "Socket error" ты будешь получать. А вот если выключить встроенный обработчик, или запустить программу не из Builder'а, тогда будет работать твой обработчик.
Ответить с цитированием
  (#4 (permalink)) Старый
bacho_sun bacho_sun вне форума
Member
 
Сообщений: 37
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 08.06.2005
По умолчанию Помогите с Ping - 09.02.2006, 11:14

Ребята огромное вам спасибо за помощь.
Еще раз благодарю.
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как отправить пакет ping Devill С/С++ 3 06.12.2011 17:46
PING как сократить время ожидания Svetavlgur Trolltech Qt 0 26.11.2010 12:52
Непонятный ping stb Администрирование и базы данных 5 20.06.2008 21:18
Сделать ping.exe с параметрами в командной строке NLF Visual C++ 3 12.10.2006 15:19
Ping в Linux как перевести Skol С/С++ 2 28.07.2006 17:50
Ping средствами WinApi FireSTream Delphi 2 06.09.2005 23:59
Реализация Ping на Delphi MaXXX_2004 Delphi 9 21.07.2004 19:22
Есть в С++ аналог команды Ping imported_Arty Visual C++ 3 08.12.2003 14:41
Реализация Ping на Delphi 7 Anonymous Delphi 1 30.11.2003 15:04



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов