Убрать системные сообщения.
Допустим есть следующее: Кнопка, и при её нажатии мы пингуем заданный сервер.
void __fastcall Tzlo::Button1Click(TObject *Sender)
{
ICMP->Ping(); // ICMP - это TldIcmpClient
}
Так вот, пингуемый сервер не всегда может быть онлайн, и если его нету - возникает ошибка в виде НОВОГО окна, где написано "No route to host." Причём эта ошибка возникает именно тогда, когда компьютер НЕ подключён к интернету. Как можно убрать эту ошибку? Т.е. надо чтобы окна вобще никакого небыло и моя программа просто проигнорировала эту ошибку. Я только знаю что эта ошибка является частью ResourceStrings и имеет название RSStackEHOSTUNREACH.
Цитата:
On 2002-08-26 1901, Anonymous wrote
Здраствуйте! У меня проблема. Когда я работаю с Indy клиентами (будь то TCP/ICMP) у меня возникает ошибка при невозможности соединения. А теперь по русски
Допустим есть следующее Кнопка, и при её нажатии мы пингуем заданный сервер.
void __fastcall TzloButton1Click(TObject *Sender)
{
ICMP->Ping(); // ICMP - это TldIcmpClient
}
Так вот, пингуемый сервер не всегда может быть онлайн, и если его нету - возникает ошибка в виде НОВОГО окна, где написано "No route to host." Причём эта ошибка возникает именно тогда, когда компьютер НЕ подключён к интернету. Как можно убрать эту ошибку? Т.е. надо чтобы окна вобще никакого небыло и моя программа просто проигнорировала эту ошибку. Я только знаю что эта ошибка является частью ResourceStrings и имеет название RSStackEHOSTUNREACH.
Юзай
try{
TryStatements
}
catch(TypeToCatch)
{
CatchStatements
}
1)Создай свой обработчик ошибок!(приветствуется)
2)Може просто проверять на наличие интернета, и есле нет поднят глобальный флажок и не запускать что не надо..(как вариант)
// http//www.sp1r1tual.com
Как бы я не пытался изменить его - ничаго не получается. Может есть что-то более рабочее ? :)
void __fastcall Tzlo::Button1Click(TObject *Sender)
{
try
{
ICMP->Ping();
}
catch(EIdException&)
{}
}