| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Сети > Прочитать файл с удалённой машины |
| Автор: Dimitriy 8.3.2008, 00:37 |
| 1. Необходимо прочитать текстовый файл с сервера и записать его содержимое TStringList. Желательно используя такие компоненты если это возможно: TcpClient, ClientSocket, UdpSocket. 2. Перезапись этого файла, я думаю с помощью: ServerSocket итд. Можно исходничёк такого чуда, или ссылу откуда скачать, а то сам я ниосилил. |
| Автор: jonie 8.3.2008, 15:24 |
| ктож его удалил-то .... компьютер.... и куда... ты вот сам понял что ты хочешь ? начнем с того что.... 1) через какой протокол доступен файл ? (если samba, то можно просто открыть, остальным займется ОС). 2) есть ли прямая связь мужде машинами, или одна из них (сервер) может находится за NAT-ом ? (это определяет кто должен инициализировать соединение) 3) исходя из протокола - как происходит перезапись ? (смахивает на анекдот : я скачал интерент, что мне делать ? закачай его обратно, дай другим посмотреть). ЗЫ: и это не раздел по билдеру.... |
| Автор: Dimitriy 8.3.2008, 15:40 |
| Ну просто скажу так: в процессе написания проекта возникла необходимость чтения файла с сервера например по адресу http://xxx.ru/1.txt, а как и что делать я не врубаюсь, вот думал можт кто поможет. |
| Автор: jonie 8.3.2008, 15:55 |
| ага...колечко (с) значит протокол у тя HTTP если делать на сокетах - то читать соотв. RFC по этому протоколу. Есть в билдере готовые компоненты (Indy?).... записать по HTTP "просто так" не получится - на сервере надо чтобы что-то "приняло" (восприняло запрос POST) твою информацию и сохранило... опять же почитай про протокол. Машина удаленная, но не за натом (ну или за натом но видна из вне). Т.е. инициализировать соединение должен ты (хотя, конечно, при желании это может делать и сервер). |
| Автор: Dimitriy 8.3.2008, 16:13 |
| компоненты есть, но их там туча, и некоторые при переносе на форму глючат, какие именно использовать? |
| Автор: fish9370 9.3.2008, 11:23 | ||
лучше никакие не использовать компоненты - используй синхронные (блокирующие) сокеты, не поленись, на этом форуме эта тема обсуждалась уже 1000 раз и примеров было дано столько же.. на мой взгляд, это проще и понятнее, а главное - полезнее.. 2jonie с уважением отношусь к тебе, но хочу заметить, что вовсе не обязательно чтобы при использовании NATа соединение инициировалось с кой-то определенной стороны.. если тот самый NAT правильно настроен.. а так же настроены клиенты с одной и с другой стороны.. |
| Автор: jonie 9.3.2008, 17:42 |
| fish9370 это если правильно настроено все.... чего, к сожелению, не встретишь почти( а по мне так лучше использовать готовое, чем изобратеть велосипеды... |
| Автор: Dimitriy 9.3.2008, 17:54 | ||
+1 Ну я так понял задача настолько проста, что никто на неё отвечать не хочет. |
| Автор: jonie 10.3.2008, 00:35 | ||
яб сделал так (чтение) :
запись же - почитай про HTTP протокол и сделай аналогично. |