![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
почтовый сервер [D7, Win2k]
Wistful © (2005-04-11 19:50:00)Начал писать почтовый сервер.
В общем почтовый клиент коннектится к серверу, я посылаю ему месагу НО он мне ничего не присылает.
вот исходный код:
WSAStartup($101,Init);
Sock:=Socket(PF_INET,SOCK_STREAM,IPPROTO_TCP );
Target.sin_family:=PF_INET;
Target.sin_port:=htons(1180);
Target.sin_addr.S_addr:=INADDR_ANY;
len:=SizeOf(Target);
bind(Sock,Target,SizeOf(Target));
listen(Sock,5);
Sock:=accept(Sock,@Target,@len);
writeln(inet_ntoa (Target.sin_addr));
s:='220 127.0.0.1 Simple Mail Transfer Service Ready'+#10#13;
send(Sock,S,Length(S),0);
len:=SizeOf(len);
recv(Sock,S,len,0); // клиент ничего не присылает
Verg (2005-04-11 21:47:00) [1]Тем не менее, терминатор строк обязан быть#13#10 и никак не наоборот.
wistful (2005-04-11 21:38:00) [2]Verg © (11.04.05 21:35) [6]
спасибо ! теперь принимает сообщения.
Verg (2005-04-11 21:35:00) [3]
> send(Sock,S,Length(S),0);
send(Sock, S[1],Length(S),0);
wistful (2005-04-11 21:08:00) [4]Anatoly Podgoretsky © (11.04.05 20:56) [4]
а как тогда правильно строку сформировать ?
Anatoly Podgoretsky (2005-04-11 20:56:00) [5]Не тоже самое, у тебя хакерский разделитель строк, не поддерживаемый ни одной ОС - это наказание
wistful (2005-04-11 20:45:00) [6]Anatoly Podgoretsky © (11.04.05 20:18) [2]
CRLF это тоже самое что и #10#13 ???
Anatoly Podgoretsky (2005-04-11 20:18:00) [7]crlf
wistful (2005-04-11 20:10:00) [8]насколько я понял проблема состоит в строке которую передаю клиенту. Может кто знает какими символами следует заканчивать команду ?