:: Visual Foxpro, Foxpro for DOS
Как работать с виртуальным com портом на fox-e
leonaha
Автор

Сообщений: 62
Дата регистрации: 26.01.2010
Добрый день форумчане!
Есть вопрос, как работать с виртуальным com портом из фокса.
Имею контроллер, подключается через USB. Дрова делают виртуальный порт com24. Надо передать в порт строку и прочитать из порта ответ (тоже строка).

1-й вариант: hComPort = FOPEN("\\.\\COM24") получаю ошибку 1103 Invalid seek offset. В hComPort=-1
Попытка 2: API MSCOMMCTL32. thisform.oleComPort.CommPort = 24. Ошибка Invalid port number.

В диспетчере вижу порт.
COM Port Toolkit 4.0 с ним работает.

Прошу помощи.
Ratings: 0 negative/0 positive
Re: Как работать с виртуальным com портом на fox-e
pasha_usue

Сообщений: 3647
Откуда: Е-бург
Дата регистрации: 06.10.2006
CommPort может быть максимум 16. Пересадите виртуальный компорт пониже.
Ratings: 0 negative/0 positive
Re: Как работать с виртуальным com портом на fox-e
sphinx

Сообщений: 31166
Откуда: Каменск-Уральски
Дата регистрации: 22.11.2006
Может и эта документация пригодится: www.softelectro.ru


------------------
"Veni, vidi, vici!"(с)
Ratings: 0 negative/0 positive
Re: Как работать с виртуальным com портом на fox-e
leonaha
Автор

Сообщений: 62
Дата регистрации: 26.01.2010
Спасибо всем!
Тема закрыта. Решение - перепривязал порт с 24 на 10. Как посоветовал pasha_usue.
MSCOMMCTL32 теперь нормально работает.
Ratings: 0 negative/0 positive
Re: Как работать с виртуальным com портом на fox-e
Chemberzhy

Сообщений: 13142
Откуда: Измаил
Дата регистрации: 28.04.2009
pasha_usue
CommPort может быть максимум 16. Пересадите виртуальный компорт пониже.

Весьма полезно!
Ого-го сколько я всяких примочек по ЛПТ, Гейм и КОМ портам писал в свое время и никогда не знал о таком ограничении. Правда и повода не было. Дальше 8-10 КОМ порты и не обзывались у меня никогда вроде.

Но свойство это обязательно запомню, мало ли...
Спасибо!


------------------
Что-то с памятью моей стало, всё что было не со мной- помню.
Ratings: 0 negative/0 positive
Re: Как работать с виртуальным com портом на fox-e
pasha_usue

Сообщений: 3647
Откуда: Е-бург
Дата регистрации: 06.10.2006
sphinx
Может и эта документация пригодится:
ТС использует ActiveX, который позволяет работать с портом асинхронно. А ты ему советуешь подход, в котором асинхронность ещё и написать необходимо. Причём самостоятельно. Причём на языке, у которого для этого есть только один грязный трюк - через мультипоточную DLL.
Ratings: 0 negative/0 positive
Re: Как работать с виртуальным com портом на fox-e
S-type

Сообщений: 2969
Дата регистрации: 24.04.2004
pasha_usue
А ты ему советуешь подход, в котором асинхронность ещё и написать необходимо. Причём самостоятельно. Причём на языке, у которого для этого есть только один грязный трюк - через мультипоточную DLL.
Если открыть ссылку и прокрутить, то там про ActiveX написано
Ratings: 0 negative/0 positive
Re: Как работать с виртуальным com портом на fox-e
_vit

Сообщений: 5173
Дата регистрации: 29.07.2002
В MSCOMM32.ocx чисто формальное ограничение 16 портами.
достаточно пропатчить один байт и можно довести число портов до 256.
Проверено. Сам делал когда то. Адрес байта не помню.
Думаю в инете можно найти.;)
Ratings: 0 negative/1 positive
Re: Как работать с виртуальным com портом на fox-e
Vedmak

Сообщений: 5949
Откуда: CiTY
Дата регистрации: 30.10.2003
_vit
В MSCOMM32.ocx чисто формальное ограничение 16 портами.
достаточно пропатчить один байт и можно довести число портов до 256.
Проверено. Сам делал когда то. Адрес байта не помню.
Думаю в инете можно найти.;)

Поддержу. С нумерацией портов еще те танцы. Особенно когда используются платы расширения (например MOX). Винда капризна в этом вопросе.


------------------
Говорить стоит лишь для тех, кто слушает.
Ratings: 0 negative/0 positive
Re: Как работать с виртуальным com портом на fox-e
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
S-type
Если открыть ссылку и прокрутить, то там про ActiveX написано
В ссылке стоит якорь на #M30, где никакого активикса не описывается, активикс описывается на якоре #M31 (можно это увидеть в оглавлении). А работать через АПИ функции - ну удовольстиве сильно ниже среднего.
Кроме того, полезной информации для решения проблемы по ссылке на актиикс - нет вообще.


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Как работать с виртуальным com портом на fox-e
sphinx

Сообщений: 31166
Откуда: Каменск-Уральски
Дата регистрации: 22.11.2006
pasha_usue
sphinx
Может и эта документация пригодится:
ТС использует ActiveX, который позволяет работать с портом асинхронно. А ты ему советуешь подход, в котором асинхронность ещё и написать необходимо. Причём самостоятельно. Причём на языке, у которого для этого есть только один грязный трюк - через мультипоточную DLL.

Пашк, я с тобой соглашусь. Мне случайно попалась ссылка (искал другое) - здесь и разместил. И так и назвал - МОЖЕТ пригодится в будущем. Нет - так нет, может самому понадобится, кто знает.


------------------
"Veni, vidi, vici!"(с)
Ratings: 0 negative/0 positive
Re: Как работать с виртуальным com портом на fox-e
sphinx

Сообщений: 31166
Откуда: Каменск-Уральски
Дата регистрации: 22.11.2006
Вит, Пашк - учту, если столкнусь.


------------------
"Veni, vidi, vici!"(с)
Ratings: 0 negative/0 positive
Re: Как работать с виртуальным com портом на fox-e
Starpom

Сообщений: 71
Дата регистрации: 29.06.2006
Может кому пригодиться:
В файле MSCOMM32.OCX найдите строку «3D 16 00», должна быть только одна. Эта строка уникальна. Измените строку на «3D FF 00» и сохраните файл.
Но в связи с тем что разновидностей данного файла много, может и не быть конкретно такой строки.
У меня она отыскивалась по адресу x00003F52

P.s. вот нулики в этой строке наводят на разные мысли.
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 29 (Гостей: 29)

© 2000-2024 Fox Club 
Яндекс.Метрика