Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2007.10.21;
Скачать: [xml.tar.bz2];

Вниз

Как подкл. ч-з TCPClient, отправить строку "GET" и пол.ответ ?   Найти похожие ветки 

 
jiny   (2007-02-21 10:55) [0]

пишу свой прокси
Задача следующая :
уже получив набор строк из браузера клиента переслать или запросить информацию в текст. виде и переправить ее обратно браузеру клиента. С отправкой клиенту проблем не возникает, но вот с расшифровкой строки принимаемой от браузера возникли вопросы, я попробовал сделать так

TCPClient1.RemoteHost:="http://www.microsoft.com/";
TcpClient1.RemotePort:="80";
try
if TcpClient1.Connect then
 TcpClient1.SendLn(ClientMsg); //ClientMsg - TStringList  с данными сервера
finally
 TcpClient1.Disconnect;
end;

На ресив TCpclient1 повесил брейк-поинт, но он даже конект не делает, может кто подскажет в чем моя ошибка.
Кстати вот содержание ClientMsg :

GET http://www.microsoft.com/isapi/redir.dll?prd=ie&pver=6&ar=msnhome HTTP/1.0
Accept: */*
Accept-Language: ru
Cookie: MC1=GUID=fe7348d142c91b40a26bf562220e9b88&HASH=d148&LV=200611&V=3; MUID=BEE4C539D05442C7907EBB76CBA42D4C; WT_FPC=id=82.200.227.194-3914840032.29820858:lv=1164137504625:ss=1164137204375; A=I&I=AxUFAAAAAAAvCAAAnEZp2o9I7aQf9fqcg70spw!!
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Host: www.microsoft.com
Proxy-Connection: Keep-Alive


 
jiny   (2007-02-21 11:04) [1]

Забыл добавить, INDY и что-то вроде Webrowser не предлагать, хочу все знать, в пределах разумного, конечно же.


 
Dmitrij_K   (2007-02-21 11:08) [2]

GET /isapi/redir.dll?prd=ie&pver=6&ar=msnhome HTTP/1.0
+ в конце заголовка пустая сторка


 
jiny   (2007-02-21 11:11) [3]

спасибо учту, но даже коннект не происходит (TcpClient1.Connect)


 
SlymRO   (2007-02-21 11:20) [4]

TCPClient1.RemoteHost:="www.microsoft.com";


 
Dmitrij_K   (2007-02-21 11:20) [5]

host неправильно задаешь


 
jiny   (2007-02-21 11:41) [6]

Спасибо, коннект пошел, отправляю ему например
GET /isapi/redir.dll?prd=ie&pver=6&ar=msnhome HTTP/1.0"+#13+#10
Не получаю отклика


 
Reindeer Moss Eater ©   (2007-02-21 12:02) [7]

не получаешь отклика потому, что не завершил заголовок.


 
jiny   (2007-02-21 12:15) [8]

>>Reindeer Moss Eater ©   (21.02.07 12:02) [7]
может подскажешь как его закончить ?


 
Reindeer Moss Eater ©   (2007-02-21 12:19) [9]

Ну подумай. Ты ж сам хотел.
Если заголовок может быть многострочным, то как дать понять серверу, что ему передана последняя строка.


 
Dmitrij_K   (2007-02-21 12:34) [10]

http://ru.wikipedia.org/wiki/HTTP


 
jiny   (2007-02-21 12:48) [11]

Зашел http://ru.wikipedia.org/wiki/HTTP прочитал, что синтаксис завершения запроса : CRLF, насколько я понял это #13+#10 или #$D#$A, получилось это
"GET /isapi/redir.dll?prd=ie&pver=6&ar=msnhome HTTP/1.0"#$D#$A
"Accept: */*"#$D#$A
"Accept-Language: ru"#$D#$A
"Cookie: MC1=GUID=fe7348d142c91b40a26bf562220e9b88&HASH=d148&LV=200611&V=3; MUID=BEE4C539D05442C7907EBB76CBA42D4C; WT_FPC=id=82.200.227.194-3914840032.29820858:lv=1164137504625:ss=1164137204375; A=I&I=AxUFAAAAAAAvCAAAnEZp2o9I7aQf9fqcg70spw!!"#$D#$A
"User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"#$D#$A
"Host: www.microsoft.com"#$D#$A
"Proxy-Connection: Keep-Alive"#$D#$A
строки вынуты из WatchList
все еще нет результата


 
Reindeer Moss Eater ©   (2007-02-21 12:51) [12]

Все еще нет завершенного заголовка запроса.

Может не надо было кричать "того не предлагать, сего не предлагать", а заглянуть в исходники того же Indy?


 
jiny   (2007-02-21 13:02) [13]

Reindeer Moss Eater ©   (21.02.07 12:51) [12]
да никто и не кричал, просто не хочу раздувать экзешник, ну а где в Indy, т.е. в каком модуле смотреть, может хватит вставать в позу и отбросить все принципы, кстати говоря мой пост о том чего не стоит предлагать никак не пересекается с завершением заголовка. И если я тебя обидел этим постом, прошу прощения, но ничего обидного я не имел в виду, просто не хотелось бы работать с INDY, мне важно понять суть а не всунуть компоненту на форму и завершить проект.


 
Reindeer Moss Eater ©   (2007-02-21 13:02) [14]

> прочитал, что синтаксис завершения запроса : CRLF,


 
Reindeer Moss Eater ©   (2007-02-21 13:03) [15]

И это верно.


 
Dmitrij_K   (2007-02-21 13:03) [16]

см. [2]


 
jiny   (2007-02-21 13:10) [17]

Dmitrij_K   (21.02.07 13:03) [16]
Да, невнимателен я... учту, спасибо, сейчас попробую,

Reindeer Moss Eater ©   (21.02.07 13:03) [15]
ну это другое дело


 
jiny   (2007-02-21 13:26) [18]

TcpClient1.RemoteHost:=TmpHostName;
 TcpClient1.RemotePort:="80";

if TcpClient1.Connect then
    TcpClient1.Sendln(s+#13#10);
 tmpContentIn.Free;
где s - заголовок, завершающийся на CRLF, TmpHostName - имя хоста , из пункта "Host: "
все равно нет отклика


 
Reindeer Moss Eater ©   (2007-02-21 13:40) [19]

Если реквест правильный, но на него нет ответа, значит реквест не был послан.
Отладчик?


 
Reindeer Moss Eater ©   (2007-02-21 13:48) [20]

А вообще такие опыты удобнее и проще производить в блокирущем режиме синхронными методами.

Writeln(реквест);
repeat
ReadLn(респонс);
until <конец>


 
jiny   (2007-02-21 13:53) [21]

Извини за дежавю, но TcpClient опять не подключается, вот
код, попробовал HostName заменить на явно "www.microsoft.com", порт 80,
но он собака опять не подключается, ты был прав, запрос не отсылается по этой причине.


 
jiny   (2007-02-21 13:59) [22]

Извини, blocлMode забыл обратно в BmBlocking установить, трассировщиком увиделЮ что запрос уходит, брейк-поинт показал что срабатывает событие OnSend, но OnReceive никак не получаю


 
jiny   (2007-02-21 14:10) [23]

Слушай, а ты был прав, сразу после сенда сделал ReceiveLn и в принципе получил ответ сервака, УРА !!!! Спасибо всем , но я не прощаюсь :)


 
jiny   (2007-02-21 14:38) [24]

Прокси заработало, как теперь загрузить с сервера весь остальной контент
от послания сервера до первой пустой строки избавился, но весь остальной контент получаю не до конца, а потом как быть с рисунками, их же тоже надо, я так понимаю кэшировать и передавать потоком. ?
Вобщем на ya.ru заходит, ессно без рисованой буквы "Я", поиск делает, но остальные сайты где есть рисунки, а их великое множество грузит не до конца. Как быть ?


 
Reindeer Moss Eater ©   (2007-02-21 14:47) [25]

В ответе сервера, от которого ты избавился, есть длина передаваемого после заголовка контента. Если её там нет, читать ответ надо до дисконнекта.


 
SlymRO   (2007-02-21 14:50) [26]

Reindeer Moss Eater ©   (21.02.07 14:47) [25]
Если её там нет, читать ответ надо до дисконнекта

Он читает ReadLn"ом :) в т.ч. и картинки :)!


 
jiny   (2007-02-21 14:53) [27]

Вот начальный контент сервера

HTTP/1.1 302 Moved Temporarily
Server: tns-counter.0.3.1
Date: Wed, 21 Feb 2007 11:50:16 GMT
Content-Type: image/gif
Content-Length: 43
Location: http://www.tns-counter.ru/V13b****mail_ru/ru/CP1251/tmsec=mail_main/
Connection: close
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
P3P: policyref="/w3c/p3p.xml", CP="NOI DSP COR NID CUR OUR NOR"
Expires: Thu, 01 Jan 1970 00:00:01 GMT
Pragma: no-cache
Set-Cookie: gsid=8DFC030045DC31F845DC3900; path=/


вот что идет после :
GIF89a


 
Reindeer Moss Eater ©   (2007-02-21 14:53) [28]

... грузит не до конца. Как быть ?

Быть как и все нормальные люди.
Прежде чем садится реализовывать прокси, сесть и прочитать пару-тройку RFC по теме.


 
jiny   (2007-02-21 14:56) [29]

на mail.ru 2-3 гифки загрузились, каким то образов, может стрим читать (ReceiveStream) ?
и дальше не грузит, хотя  а на ya.ru пашет, только вот с рисунками проблема, как можно ее решить, хотя бы подскажите, в каком направлении рыть


 
jiny   (2007-02-21 14:57) [30]

Reindeer Moss Eater ©   (21.02.07 14:53) [28]
прочитал по HTTP, но нифига не получается( в п.29)


 
Reindeer Moss Eater ©   (2007-02-21 14:58) [31]

Server: tns-counter.0.3.1
Date: Wed, 21 Feb 2007 11:50:16 GMT
Content-Type: image/gif
Content-Length: 43
Location: http://www.tns-counter.ru/V13b****mail_ru/ru/CP1251/tmsec=mail_main/
Connection: close
Cache-Control: no-store


 
jiny   (2007-02-22 08:32) [32]

Reindeer Moss Eater ©   (21.02.07 14:58) [31]

длинну контента вытащил, это в байтах или количество строк ?
Reindeer Moss Eater ©   (21.02.07 14:47) [25]
Если её там нет, читать ответ надо до дисконнекта

то чьего дисконекта нужно принимать данные с сервера, до дисконекта с сервером HTTP или с браузером клиента ?
Пробовал и так и так, конект  стоит устойчивый :)

Рисунки все еще не принимаются, пробовал через ReceiveBuf & SendBuf та же ерунда


 
jiny   (2007-02-22 08:49) [33]

Судя по логу обращений от клиента, который ведет мой прокси, при входе c браузера клиента на www.mail.ru данные должны приниматься в несколько потоков. Может при TcpServer1.OnAccept нужно создавать несколько потоков и в каждом потоке принимать данные от сервера HTTP и сразу же отправлять в браузер клиента ?
вот что пишет лог прокси при попытке входа на www.mail.ru , я насчитал 9 команд GET:


*** Connection Accepted ***
Remote Host: ACA80C53.ipt.aol.com (172.168.12.83)
===== Begin message =====
GET http://www.mail.ru/ HTTP/1.0</>
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, application/x-icq, */*
Accept-Language: ru
Cookie: mrcu=48CE45D995667305882834E3C852; p=+ckHAFr/RQAA; t=obLD1AAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAA AAAAEGugcA; Mpop=1172031148:6140667f0a60417f19050219091d001b030d004f6a5d5e465e070308061d000f 7118504a50530706071658565c5d1a454c:asik666@mail.ru:
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Host: www.mail.ru
Proxy-Connection: Keep-Alive
===== End of message =====
*** Connection Accepted ***
Remote Host: ACA80C53.ipt.aol.com (172.168.12.83)
===== Begin message =====
GET http://www.mail.ru/mail/ru/images/logon.gif HTTP/1.0
Accept: */*
Referer: http://www.mail.ru/
Accept-Language: ru
Proxy-Connection: Keep-Alive
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Host: www.mail.ru
Cookie: mrcu=48CE45D995667305882834E3C852; p=+ckHAFr/RQAA; t=obLD1AAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAA AAAAEGugcA; Mpop=1172031148:6140667f0a60417f19050219091d001b030d004f6a5d5e465e070308061d000f 7118504a50530706071658565c5d1a454c:asik666@mail.ru:
===== End of message =====
*** Connection Accepted ***
Remote Host: ACA80C53.ipt.aol.com (172.168.12.83)
===== Begin message =====
GET http://www.mail.ru/1.gif HTTP/1.0
Accept: */*
Referer: http://www.mail.ru/
Accept-Language: ru
Proxy-Connection: Keep-Alive
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Host: www.mail.ru
Cookie: mrcu=48CE45D995667305882834E3C852; p=+ckHAFr/RQAA; t=obLD1AAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAA AAAAEGugcA; Mpop=1172031148:6140667f0a60417f19050219091d001b030d004f6a5d5e465e070308061d000f 7118504a50530706071658565c5d1a454c:asik666@mail.ru:
===== End of message =====
*** Connection Accepted ***
Remote Host: ACA80C53.ipt.aol.com (172.168.12.83)
===== Begin message =====
===== End of message =====
*** Connection Accepted ***
Remote Host: ACA80C53.ipt.aol.com (172.168.12.83)
===== Begin message =====
===== End of message =====
*** Connection Accepted ***
Remote Host: ACA80C53.ipt.aol.com (172.168.12.83)
===== Begin message =====
===== End of message =====
*** Connection Accepted ***
Remote Host: ACA80C53.ipt.aol.com (172.168.12.83)
===== Begin message =====
GET http://www.mail.ru/mail/ru/images/logon.gif HTTP/1.0
Accept: */*
Referer: http://www.mail.ru/
Accept-Language: ru
Proxy-Connection: Keep-Alive
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Host: www.mail.ru
Cookie: mrcu=48CE45D995667305882834E3C852; p=+ckHAFr/RQAA; t=obLD1AAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAA AAAAEGugcA; Mpop=1172031148:6140667f0a60417f19050219091d001b030d004f6a5d5e465e070308061d000f 7118504a50530706071658565c5d1a454c:asik666@mail.ru:
===== End of message =====
*** Connection Accepted ***
Remote Host: ACA80C53.ipt.aol.com (172.168.12.83)
===== Begin message =====
GET http://www.mail.ru/1.gif HTTP/1.0
Accept: */*
Referer: http://www.mail.ru/
Accept-Language: ru
Proxy-Connection: Keep-Alive
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Host: www.mail.ru
Cookie: mrcu=48CE45D995667305882834E3C852; p=+ckHAFr/RQAA; t=obLD1AAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAA AAAAEGugcA; Mpop=1172031148:6140667f0a60417f19050219091d001b030d004f6a5d5e465e070308061d000f 7118504a50530706071658565c5d1a454c:asik666@mail.ru:
===== End of message =====
*** Connection Accepted ***
Remote Host: ACA80C53.ipt.aol.com (172.168.12.83)
===== Begin message =====
GET http://www.mail.ru/mail/ru/images/telephonem.gif HTTP/1.0
Accept: */*
Referer: http://www.mail.ru/
Accept-Language: ru
Proxy-Connection: Keep-Alive
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Host: www.mail.ru
Cookie: mrcu=48CE45D995667305882834E3C852; p=+ckHAFr/RQAA; t=obLD1AAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAA AAAAEGugcA; Mpop=1172031148:6140667f0a60417f19050219091d001b030d004f6a5d5e465e070308061d000f 7118504a50530706071658565c5d1a454c:asik666@mail.ru:
===== End of message =====
*** Connection Accepted ***
Remote Host: ACA80C53.ipt.aol.com (172.168.12.83)
===== Begin message =====
GET http://www.mail.ru/mail/ru/images/log_bms.gif HTTP/1.0
Accept: */*
Referer: http://www.mail.ru/
Accept-Language: ru
Proxy-Connection: Keep-Alive
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Host: www.mail.ru
Cookie: mrcu=48CE45D995667305882834E3C852; p=+ckHAFr/RQAA; t=obLD1AAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAA AAAAEGugcA; Mpop=1172031148:6140667f0a60417f19050219091d001b030d004f6a5d5e465e070308061d000f 7118504a50530706071658565c5d1a454c:asik666@mail.ru:
===== End of message =====
*** Connection Accepted ***
Remote Host: ACA80C53.ipt.aol.com (172.168.12.83)
===== Begin message =====
GET http://r.mail.ru/b1791392.gif HTTP/1.0
Accept: */*
Referer: http://www.mail.ru/
Accept-Language: ru
Proxy-Connection: Keep-Alive
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Host: r.mail.ru
Cookie: mrcu=48CE45D995667305882834E3C852; p=+ckHAFr/RQAA; t=obLD1AAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAA AAAAEGugcA; Mpop=1172031148:6140667f0a60417f19050219091d001b030d004f6a5d5e465e070308061d000f 7118504a50530706071658565c5d1a454c:asik666@mail.ru:
===== End of message =====
*** Connection Accepted ***
Remote Host: ACA80C53.ipt.aol.com (172.168.12.83)
===== Begin message =====
GET http://www.mail.ru/0.gif HTTP/1.0
Accept: */*
Referer: http://www.mail.ru/
Accept-Language: ru
Proxy-Connection: Keep-Alive
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Host: www.mail.ru
Cookie: mrcu=48CE45D995667305882834E3C852; p=+ckHAFr/RQAA; t=obLD1AAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAA AAAAEGugcA; Mpop=1172031148:6140667f0a60417f19050219091d001b030d004f6a5d5e465e070308061d000f 7118504a50530706071658565c5d1a454c:asik666@mail.ru:
===== End of message =====


 
jiny   (2007-02-22 08:51) [34]

И вообще насколько целесообразно использовать ReceiveLn, может вместо нее ReceiveBuf юзать ?


 
Reindeer Moss Eater ©   (2007-02-22 09:44) [35]

длинну контента вытащил, это в байтах или количество строк ?

Возьми первый попавшияся jpg и скажи сколько там строк.
 
то чьего дисконекта нужно принимать данные с сервера, до дисконекта с сервером HTTP или с браузером клиента ?

Ты работаешь с веб сервером. Вас двое. Ты - клиент. До чьего дисконнекта надо читать данные?

Может при TcpServer1.OnAccept нужно создавать несколько потоков и в каждом потоке принимать данные от сервера HTTP и сразу же отправлять в браузер клиента ?

Это уж как напишешь. Можно последовательно, можно и в несколько потоков.


 
SlymRO   (2007-02-22 10:26) [36]

Зачем тебе это? Стаким скудным набором знаний за эту предметную область даже браться не стоит...
Если сможешь ответить на вопрос: "Чем отличается блокирующий режим работы сокета от неблокирующего?", то можно начать "байтики слать"
Но парсить протокол высокого уровня, тебе рановато...
А если возникает вопрос: jiny   (22.02.07 8:51) [34], то нужно все отодвинуть на несколько шагов назад и подумать чемже отличеются друг от друга buf (буфер) и ln (строка)...


 
jiny   (2007-02-22 11:16) [37]

>>Reindeer Moss Eater ©   (22.02.07 09:44) [35]

Честное слово, чувствую себя Кларисией Старлинг из "Молчания Ягнят", которая анализирует загадки, выдаваемые Ганибалом Лектором

>>SlymRO   (22.02.07 10:26) [36]
>>Зачем тебе это? Стаким скудным набором знаний за эту предметную
>>область даже браться не стоит.

Ну а как иначе изучить, если не практиковаться, а с практикой и теорию читаю, на которую мне более умные братья ссылки дают.

>>Если сможешь ответить на вопрос: "Чем отличается блокирующий режим
>>работы сокета от неблокирующего?", то можно начать "байтики слать"

bmBlocking & bmNonblocking, соответственно синхронная и асинхронная прием и передача данных, а также синх. и асинх. соединение с сервером, т.е.  если ты вызвал какую-нить  из функций приема/передачи, то инструкции, следующие за этим вызовом, будут выполнены лишь после того, как будет выполнен фактический ввод/вывод в том или ином объеме запрошенных к вводу/выводу данных.
Теперь я могу "слать байтики" дальше ?! Я так думаю, что да.

>>>Но парсить протокол высокого уровня, тебе рановато...
Извини, я сам буду решать за что мне браться, и планомерно, пусть не так быстро, как хотелось, буду добиваться этого.

>>чемже отличеются друг от друга buf (буфер) и ln (строка)...
Buf & Ln это соответственно byte & string.

Чем стыдить человека, причем попусту, лучше бы помог разобраться c вопросом. С дельфями я знаком давно, но работал, в основном только с базами данных, но эту тему только осваиваю, и этот форум не единственное место моего обучения, если тебе от этого станет спокойней на душе.


 
jiny   (2007-02-22 11:18) [38]

Опять обсуждение превратилось в перепалку и острословие :(


 
Reindeer Moss Eater ©   (2007-02-22 11:35) [39]

Извини, я сам буду решать за что мне браться, и планомерно, пусть не так быстро, как хотелось, буду добиваться этого.

Тебе уже говорили, что все, что ты хочешь об этом знать и не стесняешься спрашивать здесь описано в RFC. Причем есть переводы этих документов на русский язык.

Нам цитировать положения этих документов здесь?


 
jiny   (2007-02-22 11:58) [40]

>>Тебе уже говорили, что все, что ты хочешь об этом знать и не
>>стесняешься спрашивать здесь описано в RFC. Причем есть переводы этих >>>документов на русский язык.

Ты знаешь, все что там написано, я прочитал, но проблемы  моей это никак не решило

А если не задавать в форуме вопросов, пусть даже, по вашему мнению, тупых, то давайте попросим уважаемых модераторов вообще закрыть его, зачем он нужен, все ж будут по ссылкам в любом случае ходить.
А раз форум есть, то будут и вопросы - любые, тупые, умные, не имеет значения, если тебе в ломы отвечать можешь вообще не отвечать, никто же не принуждает, только просит.



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

Форум: "Сети";
Текущий архив: 2007.10.21;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.58 MB
Время: 0.039 c
2-1190567395
Bast
2007-09-23 21:09
2007.10.21
Проблема


2-1190688191
Arkadiy
2007-09-25 06:43
2007.10.21
числа в строковом поле


2-1190912375
mfender
2007-09-27 20:59
2007.10.21
Запись TList в файл


2-1190742234
Bast
2007-09-25 21:43
2007.10.21
Post


2-1190886488
Nikfel
2007-09-27 13:48
2007.10.21
Список файлов и папок.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский