0 / 0 / 1
Регистрация: 23.01.2013
Сообщений: 117
|
|
1 | |
Обмен данными27.01.2013, 00:58. Показов 2420. Ответов 12
Метки нет (Все метки)
Добрый день. Не мог ли бы вы мне рассказать об обмене данными через интернет в дельфи?
А именно, что мне надо. Использовать как сервер мой компьютер(есть динамический ip).Нужно создать программу с чатом и новостями. Буду признателен, если поможете разобраться с тем как это сделать. P.S. Готовых программ сувать не нужно, хочу разобраться сам.
0
|
27.01.2013, 00:58 | |
Ответы с готовыми решениями:
12
Обмен данными (клиент-сервер) Обмен данными между формами Обмен данными между программами Обмен данными между формами |
3219 / 2362 / 540
Регистрация: 11.09.2009
Сообщений: 8,605
|
|
27.01.2013, 02:52 | 2 |
Чтобы вас видели, придётся использовать DynDNS (сервис такой, почитайте).
Тогда вам придётся написать собственный Веб-сервер, а уж потом под него -свой сайт с чатом и новостями. Ладно, не буду издеваться. Выберите сначала, какой сервер будете использовать. Например, "Апач". Потом найдите бесплатный движок сайта. Изучите его описание. А потом под это хозяйство пишите свой код. Тогда ваши вопросы будут конкретными и на них смогут отвечать.
0
|
0 / 0 / 1
Регистрация: 23.01.2013
Сообщений: 117
|
|
27.01.2013, 12:35 [ТС] | 3 |
Какой там сайт... Мне нужно просто сделать обмен данными, сайт я делать не умею
Так вот.Я могу и статический IP сделать, мне главное понять вообще как работает эта хрень. Функции, процедуры. Может литературу посоветуете, коли сами ответить не можете?
0
|
1 / 1 / 0
Регистрация: 23.01.2013
Сообщений: 29
|
|
27.01.2013, 13:31 | 4 |
Starkow, сначала надо, наверное, понять, какой тип коннекта будет. Краткосрочный (как у http) или постоянный (например, через сокеты)?
Добавлено через 6 минут Не по теме: Хотя для вашей цели подошёл бы постоянный. Но поверьте мне, вам скорее всего проще будет изучить html, php, css и javascript. Необходимые знания в php изучаются максимум за неделю - в написании php-скриптов вообще нет ничего сложного, разве что настроить сервер (с апачом, конечно). Ну с html + js + css наверно придётся подольше, если вы с ними никогда не сталкивались. Но тут чат можно реализовать, заюзав такую технологию, как AJAX - тогда и сообщения будут мгновенно доходить до собеседника :)
0
|
39 / 38 / 6
Регистрация: 11.05.2010
Сообщений: 141
|
|
27.01.2013, 13:35 | 5 |
Если делать на delphi. То можно использовать indy компоненты. Когда то тоже хотелось написать что-то работающее с интернетом. И я создавал вопросы на этом форуме))) В конце получилась небольшая программка-чат. С помощью этих компонентов через протокол TCP ip у меня получалось отправлять string и любой файл с компьютера. После я задумывался о том, как будет воспринимать клиент приходящие данные. К примеру любое действие сервер-клиент я начинал со строк "start" "finish". Между ними отправлял команды и данные. Например "Vhod", "Nick=Andrey", "Pass=Password". Наработки у меня на старом компьютере, хорошо, что они тебе не нужны)))
0
|
iDeath
|
27.01.2013, 13:40
#6
|
Не по теме: Козырь, да, я реализовывал похожую структуру, только более сложную. Но тут всё дело в том, что если брать socket'ы, то надо ещё уметь хорошо обращаться с потоками. Мало того, надо понять, как этими потоками управлять в серверной части - там всё не так просто, как по началу кажется. Маленькая ошибка где-нить, и всё. Я вот видимо тогда допустил ошибку - у меня сервер отрабатывал какое-то время, переписка шла, всё было ок. Но в один момент происходил какой-то сбой в серверной части. Сервер вроде не прекращал работу, но на какое-то время из-за сбоя переставали передаваться сообщения, и приходилось перезапускать уже клинетскую чатсть, чтобы произошёл новый коннект, и всё заработало :)
0
|
39 / 38 / 6
Регистрация: 11.05.2010
Сообщений: 141
|
|
27.01.2013, 13:52 | 7 |
iDeath, это логично, что будет не просто и будет множество ошибок. Сколько их было у меня))) Ночью иногда хотелось повеситься из-за того, что не понимал почему не работает. И сервер выполнял совершенно необычные вещи. И как я делал, чтобы пользователей было больше одного))) Стоит задуматься хватит ли сил писать на делфи, м.б. стоит использовать веб технологии, но я из тех людей, которые хотят знать чуточку глубже. Сейчас я учу ассемблер, точнее начинаю практиковать. Автору темы- задай себе вопрос, стоит ли? Хватит сил? А потом приступай- это интересно))) И насколько я знаю, indy- теже сокеты, только попроще .
Добавка: в моей программе и сейчас куча багов. А еще хранится txt, в котором написано, что я хотел реализовать в этой программе.
0
|
0 / 0 / 1
Регистрация: 23.01.2013
Сообщений: 117
|
|
27.01.2013, 14:06 [ТС] | 8 |
Нужна программа, сочетающая в себе чат и новостной блог(как в онлайн играх).Для этого, думаю, понадобятся сокеты.
Просто я знаком именно с дельфи, и мне хочется написать сею программу именно на нем.Не думаю, что это так тяжело, как многие тут понаписали.
0
|
39 / 38 / 6
Регистрация: 11.05.2010
Сообщений: 141
|
|
27.01.2013, 14:37 | 9 |
Нет, ну все зависит от твоих способностей. Я говорил только за себя. Для 9-классника, который не знал, с чего начать было тяжело. Сейчас бы я многое сделал поумнее, но все равно не думаю что вышло бы что-нибудь стоящее.
0
|
0 / 0 / 1
Регистрация: 23.01.2013
Сообщений: 117
|
|
27.01.2013, 14:40 [ТС] | 10 |
Дело в том, что мне не нужно так сказать многоканальное соединение. Мне нужно всего-лишь отправлять текстовый файл с нескольких клиентов на сервер, а там обрабатывать.Посколько клиентов немного(максимум 4), думаю ничего сложного нету. Я просто не знаю никаких функций и процедур, связанных с сим и прошу мне объяснить их, ну или дать ссылку на адекватную статью.
0
|
1 / 1 / 0
Регистрация: 23.01.2013
Сообщений: 29
|
|
27.01.2013, 14:49 | 11 |
http://www.delphisources.ru/pa... elphi.html
Добавлено через 1 минуту Это так, вам поверхностно покажет что есть сокеты. Занятие это творческое, просто так в гугле вы не найдёте полного описания, которое потребуется для быстрого изучения сетей, и уж собенно под Delphi - я искал, я знаю Добавлено через 4 минуты Чат требует постоянного соединения. А так как клиент не 1, то метод меняется на неблокирующий (кажется так называется), в котором не будет такого, что один клиент с тормознутым иннетом, и тогда все из-за него страдают. Тут вам придётся получше понять, что есть потоки. Придётся изучить то, как реализован неблокирующий (асинхронный) метод коннекта, что довольно непросто без соответствующий докумментации на русском (если вы, конечно, не знаете английский).
0
|
39 / 38 / 6
Регистрация: 11.05.2010
Сообщений: 141
|
|
27.01.2013, 14:58 | 12 |
https://www.cyberforum.ru/delphi-networks/thread184312.html Когда-то мне дали подобный совет)))
Мое основное построение было таким: на сервере запускаю поток, выход из которого осуществлялся только по получении особой команды. Он зацикливался и принимал сообщения. Чтобы прием не останавливался выполнение операций поток не выполнял, просто отдавал основной программе. Использовал я IdTcpClient и IdTcpServer. На соответствующих вкладках indy.
0
|
0 / 0 / 1
Регистрация: 23.01.2013
Сообщений: 117
|
|
27.01.2013, 15:34 [ТС] | 13 |
0
|
27.01.2013, 15:34 | |
27.01.2013, 15:34 | |
Помогаю со студенческими работами здесь
13
Обмен данными между процессами Обмен данными между TWebBrowser и TMemo Обмен данными между двумя объектами Memo 2-сторонний обмен данными приложения и библиотеки -Delphi Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |