![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Make_Pic |
![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 31.8.2014 Пользователь №: 4215 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Помогите пожалуйста. Как можно из программы, которую я пишу для фирмы в Qt4.8 сделать так, чтобы она (программа)создавала модемное сетевое подключение в системе WIN XP,7, а потом его запускала т.е. делала коннект (имитировало нажатие кнопки "Вызов") и прерывало его когда необходимо (кнопка "Отмена")? Можно посмотреть примеры такого приложения на Qt?
Возможно этоделается не так, а по другому - подскажите пожалуйста. P.S. Используется виртуальный COM порт на PС. Мне поставили задачу, добавить в мою программу что то наподобие примитивного коннект менеджера 3G модема, подключенного чере USB виртуальный COM порт. |
|
|
FireBlack |
![]()
Сообщение
#2
|
![]() Студент ![]() Группа: Участник Сообщений: 38 Регистрация: 17.10.2010 Из: г.Пенза Пользователь №: 2121 Спасибо сказали: 13 раз(а) Репутация: ![]() ![]() ![]() |
Помогите пожалуйста. Как можно из программы, которую я пишу для фирмы в Qt4.8 сделать так, чтобы она (программа)создавала модемное сетевое подключение в системе WIN XP,7, а потом его запускала т.е. делала коннект (имитировало нажатие кнопки "Вызов") и прерывало его когда необходимо (кнопка "Отмена")? Можно посмотреть примеры такого приложения на Qt? Возможно этоделается не так, а по другому - подскажите пожалуйста. P.S. Используется виртуальный COM порт на PС. Мне поставили задачу, добавить в мою программу что то наподобие примитивного коннект менеджера 3G модема, подключенного чере USB виртуальный COM порт. Судя по всему Вам надо через COM порт подключиться к GPRS модему, установить соединение и дальше использовать обычное сетевое?! Для работы с COM портом начиная с Qt 5.1 был введен класс QSerialPort. Но т.к. Вы используете Qt 4.8, то придется использовать другие, похожие библиотеки, например QextSerialPort. Чтобы установить соединение необходимо использовать AT-команды, о которых можно почитать в интернете, например здесь или здесь. В общем случае, для Huawei модемов используется следующая последовательность команд: посылаем ATE1 модем отвечает OK посылаем AT+CGDCONT=1,"IP","internet" модем опять отвечает OK далее устанавливаем соединение командой ATD*99# если модем отвечает CONNECT, значит соединение установлено. (Конечно набор команд зависит от самого модема и используемого оператора. Я бы рекомендовал сначала, попробовать установить соединение вручную через терминал, а уж потом реализовывать все это в коде) Ну а после установления соединения можно использовать обычный QtNetwork. |
|
|
Make_Pic |
![]()
Сообщение
#3
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 31.8.2014 Пользователь №: 4215 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Ну а после установления соединения можно использовать обычный QtNetwork. Как делать соединение на модеме я знаю, как работать с COM портом из Qt то же разобрался (только вопрос остался по Qt5 и встроенному в эту версию QtSerialport - Остался баг с подтрмаживанием обмена по COM порту при перемещении или изменении размеров окна?). Вопрос мой был в другом, а именно Я ий Ot сделал AT командами соединение с интернетом в самом модеме 3G, но как теперь с COM порта перенаправить поток, подключение в PC WIN 7, так чтобы программы имели доступ в интернт, короче было нормальное подключение к интернету чере 3G модем? Через мастер подключений в самом WIN 7 это я делаю с модемом без проблем. |
|
|
FireBlack |
![]()
Сообщение
#4
|
![]() Студент ![]() Группа: Участник Сообщений: 38 Регистрация: 17.10.2010 Из: г.Пенза Пользователь №: 2121 Спасибо сказали: 13 раз(а) Репутация: ![]() ![]() ![]() |
Остался баг с подтрмаживанием обмена по COM порту при перемещении или изменении размеров окна? Это связано с тем, что судя по всему, у Вас работа с COM портом производится в основном потоке, где обрабатываются события интерфейса. И Вам следует создать специальный поток для работы с COM портом. ...чтобы программы имели доступ в интернт, короче было нормальное подключение к интернету чере 3G модем Теоретически, после установления соединения должно появится новое сетевое подключение, через которое все программы и будут выходить в интернет. Если его нет, то прошу прощения, значит мое предположение не верно. И Вам проще всего использовать дополнительное ПО для установления соединения. В Linux'е, я бы использовал WvDial. Под винду в интернете нашел: 3G Modem Internet Dialer - софтину с интерфейсом, в исходном коде которой можно посмотреть как это делается; DotRas - библиотеку, которую можно использовать для установления соединения; Qt Cell Module - модуль для работы с телефонией; и MSDN документацию - для программного создания соединения. Что из этого подойдет не знаю, тут только пробовать надо. |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 3.5.2025, 17:20 |