Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

На каком порте установлен модем ? [D2, D3, D4, D5, D6, D7, Win95/98, WinME, NT4, Win2k, WinXP]


BFG9k ©   (2005-08-25 14:45:00) 

Использую RAS для работы с модемом. Как, зная название соединения (до его установки), узнать на каком порте установлен использующий его модем ?


Wood   (2005-09-28 11:38:00) [1]

Простите великодушно! Нашел ошибку.


Wood   (2005-09-28 11:15:00) [2]

Функция RegOpenKeyEx(CurrentKey, PChar(Subkey), 0, KEY_READ, key):
Где subkey - 'software/microsoft/ras/tapi devices/unimodem' просто не находит (не открывает такой ключ). Мне надо считать значение, например, параметра "Addess" в реестре он виден как REG_MULTI_SZ. Что же делать?! Убился уже!


Wood   (2005-09-28 10:03:00) [3]

функция RegQueryValueEx() не находит такой путь 'software/microsoft/ras/tapi devices/unimodem'. Подозреваю, ей не нравится длинное имя subkey


Wood   (2005-09-28 03:33:00) [4]

Ребят, я в API не бум-бум, помогите с функциями, типа RegOpenKeyEx(), так как значение 'software/microsoft/ras/tapi devices/unimodem' TRegistry не  может прочитать, какой функцией прочитать значение и как правильно ее написать, хоть примерчик, плз!


Piter   (2005-08-31 19:06:00) [5]

Наверняка по имени устройства можно как-нибудь запросить информацию о нем, в том числе и порт.
Копай в эту сторону...


BFG9k   (2005-08-31 18:12:00) [6]

Обновление :)


BFG9k   (2005-08-26 17:29:00) [7]

Смотрел естественно - не входит


Piter   (2005-08-26 17:17:00) [8]

Там с помощью RAS можно узнать имя устройства точно. Возможно, в имя устройства входит порт на котором оно висит... фиг знает - посмотри


BFG9k   (2005-08-26 17:12:00) [9]

Если посмотреть в реестре:

HKLM/software/microsoft/ras/tapi devices/unimodem

... то можно увидеть на каком порте установлен модем. Но лазить у пользователя в реестре не очень хочется. Должна быть функция.


BFG9k   (2005-08-26 16:57:00) [10]

Piter :
Работа с COM портом мало чем отличается от работы с файлом. Я записываю в него AT комманду, а потом анализирую ответ. Здесь проблем нет.

Если вызвать свойства любого соединения, то можно увидеть примерно такую строку :

Модем - стандартный модем 19200 бод (COM1).

Думается мне, что если уж это есть в совствах, то с помощью RAS все-таки можно вытащить этот самый COM1. Но как это сделать,я не знаю. Вопрос только в этом , со спутником я сам разберусь.


Piter   (2005-08-25 22:41:00) [11]

NikNet ©   (25.08.05 22:08) [6]
Сканируй PCI шину


чего?

Какой в этом смысл? Устройство то есть, на месте. А вот допустим сигнала нет (спутник в тень ушел).

Ну и чего делать? Тут столько вариантов, столько устройств... нафиг это не надо


NikNet   (2005-08-25 22:08:00) [12]

Сканируй PCI шину.
или проверяй порты на ответ.


Piter   (2005-08-25 16:45:00) [13]

Ну вот, от того, чтобы узнать на каком порту модем мы плавно перешли к тому, чтобы узнать состояние устройства. Имхо, это вовсе не к RAS.
RAS этим не занимается. И я бы не стал.

Если пользователь хочет установить соединение - так устанавливай. Если не получится, RasDial вернет там что-надо, расшифруешь код ошибки и выдашь пользователю. А там пользователь пусть дальше сам решает.

Менеджер дозвона не должен уметь строить прогнозы - возможно ли сейчас установление коннекта или нет.


BFG9k   (2005-08-25 15:51:00) [14]


> Лучше, IMHO, выводить индикатор нахождения спутника.


Только как это сделать ? Думаю, что это на порядок сложнее, чем получать информацию с порта. К тому же спутник может находится там где надо, но у меня нет к нему доступа (да мало ли что). Это определенно не выход.


Leonid Troyanovsky   (2005-08-25 15:34:00) [15]


> BFG9k ©   (25.08.05 15:31) [2]
> До дозвона мне нужно вывести на форму индикатор состояния
> COM-порта. Это нужно для того, чтобы пользователь знал,
> имеет ли смысл сейчас дозваниваться.
>
> Например, если модем спутниковый, то не всегда можно соединиться
> (например спутник находится х/з где или по другим причинам).
>


А на зачем пользователю состояние порта?
Если тот, конечно, исправен.

Лучше, IMHO, выводить индикатор нахождения спутника.

--
Regards, LVT.


BFG9k   (2005-08-25 15:31:00) [16]

До дозвона мне нужно вывести на форму индикатор состояния COM-порта. Это нужно для того, чтобы пользователь знал, имеет ли смысл сейчас дозваниваться.

Например, если модем спутниковый, то не всегда можно соединиться (например спутник находится х/з где или по другим причинам).

А какая вообще разница для чего ? Попрошу не увиливать от ответа :)


Piter   (2005-08-25 15:14:00) [17]

а зачем тебе эта информация?


Наверх

Титульная страница Поиск, карта сайта Написать письмо