![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Sockets must die!!!!!!! [D5, Win95/98, WinME, NT4, Win2k]
Dark_Dan © (2001-10-02 18:09:00)Проблема с сокетами...
При передачи сообщения серверная часть начинает материться на синхронизацию потока. Что это может быть (типы ClientType и ServerType стоят в ctNonBlocking)
Да может кто знает как заблокировать порты... 80, 21, 110, 111, 1080 и т. д....
sedoy (2001-10-10 13:35:00) [1]маленькая поправка :
Client.socket.send... - правильно, а в сервере просто Socket.recieve , потому что для сервера это находится в событии onRead, а у него есть параметр Socket, поэтому обращаясь как server.Socket.recieve, мы попадаем по-видимому в др. гнездо. отсюда и ошибки.
вот такие приколы...
Smart (2001-10-10 09:53:00) [2]Я так понимаю оно тебе говорит "Asynchronious socket error #???"
Погляди внимательно в тот момент когда ты шлешь мессагу у тебя
должно быть
<pre>
Server.Active=True
Client.Active=True
</pre>
Да к тому же sedoy прав надо все делать через
Server.Socket.Recieve....
Client.Cosket.Send...
sedoy (2001-10-08 17:50:00) [3]Насчет must die ты не прав.
Проблема не в сервере - нужно
ClientSocket1.Socket.SendBuf(Send, sizeof(Send));
потому что
ClientSocket1 - TClientSocket, а
Socket - TClientWinSocket
Digitman (2001-10-08 08:51:00) [4]//"В серваке"
var
Buf: TSend;
socket.receivebuf(Buf, SizeOf(Send));
Dark_Dan (2001-10-08 03:04:00) [5]На счет блокировки это как в том месадже надо сделать что-то типа FireWell
Dark_Dan (2001-10-08 03:00:00) [6]-->> Wonder
//В клиентской части
type
TSend = record
IP: String[15];
Mode: Byte;
end;
....
....
....
var
Send: TSend;
Procedure TForm1.Button1Click(Sender: TObject);
begin
ClientSocket1.SendBuf(Send, sizeof(Send));
end;
//В серваке
socket.receivebuf(Buf, socket.receivelength); // И вот тут возникает эта гадость.
Не
Wonder (2001-10-03 10:53:00) [7]Что значит заблокировать? Если на них не висят никакие сервисы, то они и так "заблокированы". Они попросту закрыты.
Digitman (2001-10-03 08:33:00) [8]Приведи фрагмент кода, дословно "матерную" фразу и укажи строчку, на которой она появляется. Класс "матерного" исключения также желателен )