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

Вниз

поймать исключение...   Найти похожие ветки 

 
Alexis ©   (2003-12-24 19:30) [0]

Необходимо, чтобы клиентская программа с ClientSocket перед стартом определяла, запущен ли в локалке сервер (с ServerSocket) и т.о. если сервер не запущен не выкидывала ошибки Asynchronous Socket Error 10061.
Но код

procedure TForm1.FormShow(Sender: TObject);
begin
try
ClientSocket1.Open;
except
on ESocketError do
begin
showmessage("Server is not running !");
exit;
end;
end;
end;

не дает результата-все равно выкидывается ошибка, а окно с сообщением "Server is not running !" не показывается !

Что я сделал не так? Как при старте проги сделать так, чтобы если сервер не запущен, выдавалось сообщение типа "Server is not running !" и не выдавалось окно с виндовым Error"ом?

Благодарю.


 
Fredericco ©   (2003-12-24 19:38) [1]

1) ClientType=ctNonBlocking
procedure TForm1.FormShow(Sender: TObject);
begin
ClientSocket1.Open;
end;


Event:
procedure ClientSocketError(Sender: TObject; Socket: TCustomWinSocket;
ErrorEvent: TErrorEvent; var ErrorCode: Integer);)
begin
//Анализ ошибки
Abort;
end;


2) ClientType=ctBlocking
procedure TForm1.FormShow(Sender: TObject);
begin
try
ClientSocket1.Open;
except
on ESocketError do
begin
showmessage("Server is not running !");
exit;
end;
end;
end;


 
Fredericco ©   (2003-12-24 19:39) [2]

Тьфу, блин
Event:
procedure ClientSocketError(Sender: TObject; Socket: TCustomWinSocket;
ErrorEvent: TErrorEvent; var ErrorCode: Integer);)
begin
//Анализ ошибки
ErrorCode:=0;
end;


 
S@shka ©   (2003-12-24 21:51) [3]

Ну да а у тебя Exception не вылетает потому что тип сокета nonBlocking


 
Rouse_ ©   (2003-12-25 02:48) [4]

http://book.itep.ru/7/sock_71.htm
http://gem.dpt.ustu.ru/InterNetBook/Contents.htm

Читаем, вникаем, спрашиваем...

Желаю успехов



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

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

Наверх




Память: 0.47 MB
Время: 0.047 c
6-94062
NoIdeaAboutName
2003-12-22 22:52
2004.02.29
Как отловить установление dialup соединения,.


1-93872
Ricko
2004-02-16 11:49
2004.02.29
АвтоСкролл в Listview


14-94093
able
2004-02-06 20:02
2004.02.29
PHP Host


1-93842
Вован_
2004-02-16 15:41
2004.02.29
Проблема WaitForSingleObject в отдельном потоке


6-94049
dolphin1
2003-12-24 13:01
2004.02.29
ICQ