PureBasic - форум

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PureBasic - форум » Программирование на PureBasic » Первая программа. Передача файлов между двумя DialUp модемами.


Первая программа. Передача файлов между двумя DialUp модемами.

Сообщений 1 страница 12 из 12

1

Приветствую форумчан.
Для себя недавно открыл эту удобную среду разработки. но до этого писал только локальные приложения. Сейчас есть необходимость написать программу передачи файлов между двумя DialUp модемами. С интернетом еще более менее знаком, фидо уже не помню.  Кроме того это первая попытка написания такого типа программ. Если кто сможет помочь буду признателен.

0

2

Что конкретно требуется, реализовать свой метод передачи файлов напрямую взаимодействуя с модемом, или устанавливать соединение с помощью Windows и передавать файлы как через интернет?

0

3

Требование такое, соединить два модема, забрать с одного компьютера файл и записать на другом. Модемы DialUp. Файлы не большие, около 30 кб. Не используя ресурсы провайдеров (желательно, но не принципиально)...))

0

4

Вот чем закончилась работа с первой задачей на PB.
Проверив то что я знаю о сетях, модедмах и протоколах вывел несколько проблем:
1) правильно подключить програмный код неизвестно к какому модему,
2) не разобрался как установить модем-приемник в режим ожидания согласно п.1
3) либо как установить модем-передатчик в режим ожидания согласно п.1
4) как провести нормально передачу данных по низкоскоростым сетям с модемами которые могут не использовать аппаратную корректировку (т.е. какой должна быть програмная часть контоля передачи содержимого),
5) малые сроки разработки
В следствии таких причин, убив часть срока на ознакомление с емайл функциями сляпал простой клиенто-передатчик. Но и тут не обошлось без подставы, оказалось некоторые почтовые сервисы с авторизацией не работают с SMTP библиотеками Пурика. Пришлось добавочно подтянуться по этому протоколу и написать функцию ручками....))

Спвсибо всем кто читал мое посллание, если кто может помогите с реализацией первоначального замысла (лучше с исходниками). Мне все еще интересно, можно ли это реализовать самому.

0

5

Я думаю что напрямую работать с модемом не имеет смысла, т. к. даже ОС с ними не работает без спец. драйвера.
Если есть такая возможность, нужно создать PPPoE соединения в ОС, указав номера телефонов куда нужно звонить.
Тогда зная имя соединения, можно программно установить его (позвонить другому модему) или разорвать.
Ну а дальше, создание обычного клиент-серверного приложения. Примеры есть на форуме.

0

6

Спасибо Петр. Но  нельзя ли как нибудь облечь в форму эти мысли, а то я уже пугаться этого направления стал.)

Схема взаимодействия модемов представляется такой: модем1 и модем2 стоят на разных компьютерах и обслуживаются одной программой, позволяющей принимать звонок, перезваниввать по входящему номеру, устанавливать соединение, передавать файл и разрывать связь( для инициирующего связь модема, далее становящегося принимающим, необходим режим отключения связи после первого удачного соединения и переход в режим ожидания входящего звонка, с номера куда он дозванивался).
  Именно при создании соединения с модемом, я не знаю как создать соединение PPPoE в OC и это, пока, для меня главные траблы...))

Хотел посоветоваться, но почему то не смог зайти на форум purebasic.info.((  Он еще работает?

0

7

Пётр написал(а):

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

Так это и не требуется. Если модем установлен в систему, то он уже заведомо имеет драйвер и готов к принятию всех команд. С модемами работают по средствам AT команд, и они универсальные. В системе есть программа HyperTerminal, она работает с любым модемом и делает всё, что и пожелал greece. Зачем же ещё писать одну? Если потренироваться, то тут собственно пример неудачный, ибо программирования как такового нет, надо только выучить все команды модема и выдавать их в нужное время. Пурик работает с портом встроенными функциями, так что думаю вообще нет ни чего сложного. Я бы сам проверил, но Dial-Up модема уже давно не имею...
Если нужны примеры, то у Делфистов есть подобные коды с нужными командами, встречал не раз.

0

8

В системе есть программа HyperTerminal, она работает с любым модемом и делает всё, что и пожелал greece. Зачем же ещё писать одну? Если потренироваться, то тут собственно пример неудачный, ибо программирования как такового нет, надо только выучить все команды модема и выдавать их в нужное время.

Вероятно, я не правильно выразил мысль, по моей идее надо было создать программу автоматического распознавания звонка(скажем после 3 сигнала) и обратной отзвонки с передачей файла. Все это попытаться запихнуть в один файл. Но проблема в том что неизвестно место эксплуатации, возможно есть только DialUp модемы, возможно придется использовать связку с выделенкой. Сейчас самому кажется что замахнулся на Эверест, но это и привлекает...))

0

9

greece написал(а):

по моей идее надо было создать программу автоматического распознавания звонка(скажем после 3 сигнала) и обратной отзвонки с передачей файла.

Насколько помню принцип работы DialUp модема, то его надо принудительно переводить в режим приема звонка ( типа пула). Вроде нет ни какой возможности включать его "на прием" просто звонком из вне, если он изначально не переведен в соответствующий режим. Если только собрать какой то гибрид телефона с АОН и модема? Но это уже к программированию отношения не имеет. Тем более, что при обратной отзвонке модемы должны поменяться местами. Да и какие же это надо нервы иметь, что бы передавать файлы с той скоростью ( 7 Кб\с) которую может обеспечить DialUp модем? И что это за место такое, где нет сотовых операторов с Интернетом? Я понимаю, что это не так халявно, но время деньги...

0

10

гибрид телефона с АОН и модема

Это как раз то самое программирование. Здесь уже появляется дополнительный гемор - работа с АТС.
Ну а перевод DialUp модема в "ожидание" решается одной командой, только как ему об этом сказать..))

Да и какие же это надо нервы иметь, что бы передавать файлы с той скоростью ( 7 Кб\с) которую может обеспечить DialUp модем? И что это за место такое, где нет сотовых операторов с Интернетом? Я понимаю, что это не так халявно, но время деньги...

Есть еще такие места на бескрайних просторах где телефонная связь работает с советских времен, а всякие "мобильные" операторы, то есть то нет. Пулы на такие линии не ставят, обычно это стратегические объекты. Но обмен с внешним миром в минимуме информации присутствовать должен. Такой как, к примеру, ежедневные (а то и чаще) диспетчерские отчеты..))

0

11

greece написал(а):

Есть еще такие места на бескрайних просторах где телефонная связь работает с советских времен, а всякие "мобильные" операторы, то есть то нет.

Остается только посочувствовать. По существу, АОН на голосовом модеме организовать не сложно, тем более, что последние марки DialUp модемов были практически все голосовые и информация в Интернете на эту тему есть. А вот с АТС наверно сложнее - если настолько древняя, что не поддерживает эту функцию, то тут уже ни чем не поможешь.

0

12

Ну в принципе это тоже не проблема: передаем текстовый файлик с телефоном, по которому должны отзвониться. Заодно и лог можно вести и проверочку.. Кстати хорошая идея: если модему не передают файл, он отключается, а не ожидает.
Но принципов и идей хватает, а как подступиться к реализации не пойму..)

0


Вы здесь » PureBasic - форум » Программирование на PureBasic » Первая программа. Передача файлов между двумя DialUp модемами.