Форум: "Сети";
Текущий архив: 2004.02.29;
Скачать: [xml.tar.bz2];
Внизпоймать исключение... Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.015 c