Модераторы: feodorv
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Список поддерживаемых скоростей модема, Как получить? 
:(
    Опции темы
Chow
Дата 17.1.2007, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 18.5.2005

Репутация: нет
Всего: нет



Нашел лишь для обычного СОМ-порта.
Структура COMMPROP, там есть поле
Код

DWORD dwSettableBaud; // allowable baud rates

Где по каждому биту можна узнать поддерживается ли та или иная скорость...

Есть что-то подобное для модема?

Делаю некий модем-пулл (так называемое логическое устройство которое содержит набор физических модемов).
Так вот, дело в том, что модемы могут быть разных моделей, марок и т.д. в контексте одного лог. устройства.
И вот когда пользователь некотороему соеденению будет задавать тот или иной лог. девайс - то чтобы возможность задать скорость соеденения была только такая - которою поддерживают ВСЕ физ.устройства в контексте выбраного логического.
Иными словами надо создать некоторое логическое И-пересечение списка поддреживаемых скоростей.
PM   Вверх
BlackStar
Дата 18.1.2007, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 134
Регистрация: 13.12.2006

Репутация: нет
Всего: 5



Могу предположить что скорость модема можно получить какой-нибудь командой AT.
PM MAIL Jabber   Вверх
Chow
Дата 18.1.2007, 12:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 18.5.2005

Репутация: нет
Всего: нет



Цитата(BlackStar @  18.1.2007,  12:30 Найти цитируемый пост)
Могу предположить что скорость модема можно получить какой-нибудь командой AT.

Дело в том, что мне нужна не текущая (установленная скорость), а список скоростей, которые модем поддерживавет.
PM   Вверх
ptr
Дата 18.1.2007, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 661
Регистрация: 31.5.2006
Где: Новосибирск

Репутация: 9
Всего: 14



Цитата(Chow @  18.1.2007,  15:32 Найти цитируемый пост)
Дело в том, что мне нужна не текущая (установленная скорость), а список скоростей, которые модем поддерживавет.

Список скоростей зависит от стандарта, который поддерживает модем.


--------------------
Единственный способ определить границы возможного - это выйти за эти границы, в невозможное.
Артур Кларк.
PM MAIL ICQ   Вверх
Chow
Дата 18.1.2007, 15:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 18.5.2005

Репутация: нет
Всего: нет



Цитата(ptr @  18.1.2007,  14:51 Найти цитируемый пост)
Список скоростей зависит от стандарта, который поддерживает модем.

Хорошо. Как узнать стандарт, который поддерживает модем?
PM   Вверх
ptr
Дата 22.1.2007, 07:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 661
Регистрация: 31.5.2006
Где: Новосибирск

Репутация: 9
Всего: 14



Использовать AT-команды.


--------------------
Единственный способ определить границы возможного - это выйти за эти границы, в невозможное.
Артур Кларк.
PM MAIL ICQ   Вверх
Chow
Дата 22.1.2007, 10:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 18.5.2005

Репутация: нет
Всего: нет



ptr, какие именно?!
PM   Вверх
dumb
Дата 22.1.2007, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 1
Всего: 158



Chow, ATIn, где n - число, которое у разных производителей отличается. а может и просто не быть такой инфы, где список скоростей выводится.
скорее всего, тебе придется делать обычную табличку "девайс-скорости"...
PM MAIL   Вверх
Chow
Дата 23.1.2007, 15:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 18.5.2005

Репутация: нет
Всего: нет



Код

AnsiString name = "\\\\.\\Standard  1200 bps Modem";
  HANDLE hand = CreateFile(name.c_str(), GENERIC_READ | GENERIC_WRITE,0,NULL,OPEN_EXISTING, 0, NULL);
  if (hand != INVALID_HANDLE_VALUE)
  {
    int size = sizeof(COMMPROP) + sizeof(MODEMDEVCAPS);
    COMMPROP *commStruct = (COMMPROP *)malloc(size);
    memset(commStruct, 0, size);
    commStruct->wPacketLength = size;
    commStruct->dwProvSpec1 = COMMPROP_INITIALIZED;
    if (GetCommProperties(hand, commStruct))
    {
      commStruct.dwProvSubType;  // тут PST_MODEM - нормально
      commStruct.dwSettableBaud; // тут 0x1006FFFF - ПЛОХО!!!
    }
  }


Как получить корректное значение dwSettableBaud?
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0502 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.