|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
21.03.2007, 15:22 | #1 |
Пользователь
Регистрация: 21.03.2007
Сообщений: 14
|
Доступ к com порту для нескольких приложений
Проблема следующего характера:
Оборудование стоит в другом городе, диагностируется при помощи компьютера, который подключается через rs232 к стойке оборудования, и специализированной дос проги. Закуплены gprs модемы для удаленного контроля за состоянием оборудования. Вопрос: Как из делфы открыть порт, набрать номер (позвонить с gprs модема) и не закрывая порт (т.к. произойдет разрыв соединения) дать доступ к нему другому приложению (дос прога)? Если бы досовская прога могла сама номер набрать. проблем бы не было... Помогите плзз, давно мучаюсь с этой проблемой! |
21.03.2007, 17:18 | #2 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Цитата:
Для Nt, w2k, XP: Uses ..., WinInet; InternetAutoDial (INTERNET_AUTODIAL_FORCE_ONLINE, Handle); Handle - окно, из которого вызывается функция. |
|
21.03.2007, 17:32 | #3 |
Пользователь
Регистрация: 21.03.2007
Сообщений: 14
|
Наверное меня не правильно поняли =). Позвонить я из делфы могу, есть спец команда для модема "ATD#", а написал я "как... набрать номер" для пояснения, для чего мне это нужно =). Суть в том, что мне необходимо открыть порт на доступ для разных приложений, т.е. чтобы его юзали 2 приложения одновременно!
"Установить зарегистрированное в системе соединение:" - если звонить средствами винды, она опять же занимает порт на себя, и пока не разорвешь соединение, к нему не достучишся. Поэтому я ищу возможность функциями API (или хоть как-нить подругому!!) открыть последовательный порт не занимая его. Но всё равно спасибо за ответ =) Подскажите кто-нить возможно ли это вообще, и как это сделать! |
21.03.2007, 20:21 | #4 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Вот ссылочка с нужными материалами:
http://wasm.ru/article.php?article=apihook_3 |
22.03.2007, 08:21 | #5 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
ну если соединение установлено, то зачем его устанавливать ещё раз?
|
22.03.2007, 09:59 | #6 |
Пользователь
Регистрация: 21.03.2007
Сообщений: 14
|
ннда..... такое впечатление, что тему читают либо с бодунища, либо вообще не читают, а сразу ответ пишут =)
to mihali4: За ссылочку большое спасибо, сча полезу там рыться.... =) Ещё раз поясню: Соединение установлено между модемами, но мне то нужно чтобы досовская прога через эти модемы сняла параметры с оборудования в другом городе, только то ПО, которое устанавливает соединение, занимает порт, и больше ни одно приложение не может к нему обратиться! Сама досовская прога звонить не умеет, она обращается напрямую к com порту для работы с оборудованием, а в момент соединения м/у модемами порт занят! вот мне и необходимо написать прогу, которая сможет набрать номер не занимая порт. ... ну вроде уже более доступно объяснил =) Последний раз редактировалось Lexx; 22.03.2007 в 10:05. |
22.03.2007, 12:27 | #7 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Сложность такого подхода заключается в том, что ДОС понятия не имеет о многопользовательском режиме и все ресурсы гребет под себя, а винда отдавать не хочет...
|
22.03.2007, 20:07 | #8 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
проблема не в этом проблема в том что если модем включается, то он не может выполнить 2 задания одновременно т.е. он не может звонить на 2 номера одновременно, в твоём случае модем уже позвонил, и ты его хочешь заставить позвонить во второе место не ложа трубку
|
23.03.2007, 12:01 | #9 |
Пользователь
Регистрация: 21.03.2007
Сообщений: 14
|
to mihali4: так пускай досовская прога и гребет под себя ресурсы, главное чтобы соединение не разорвалось...
to rpy3uH: =) я ещё раз повторяю: мне не нужно 2 раза звонить! досовская прога не умеет звонить! именно поэтому мне необходимо позвонить вмето неё, но так, чтобы не занять порт, иначе эта прога скажет мне что порт занят и работать не будет! прога считает что на локальный порт подключено оборудование, но на самом деле между портом и оборудованием висит 2 gprs модема, и чтобы прога заработала, необходимо установить соединение между модемами! 4-й раз пытаюсь объяснить что мне нужно сделать... неужели до этого недоступно пояснял? Я благодарен за неравнодушие к этой теме, для меня она очень важна, но прошу: пожалуйста, внимательно читайте суть проблемы =) |
23.03.2007, 20:13 | #10 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
набрать номер это и есть занять порт по другому нельзя, и я не представляю как можно соединить два модема не звоня,
вопрос: когда досовская прога коннектиться модем шипит? |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как считать данные с устройства, подключенного к СОМ(или ЮСБ)-порту | voron29 | Общие вопросы Delphi | 5 | 21.06.2008 15:08 |
Обращение к COM-порту из обработчика системного таймера (приложение WinForm) | mdrake | Общие вопросы .NET | 4 | 18.06.2008 09:36 |
запрет установки соединения с данным компьютером с помощью винсокетов по любому порту | joker | Win Api | 4 | 08.11.2007 17:54 |
Доступ к ИК порту | ЧИЖ | Win Api | 4 | 09.05.2007 20:41 |
Закрытие доступа к СОМ- порту | nova-alex | Win Api | 2 | 21.02.2007 11:55 |