|
Java форум JavaTalks форум программистов
|
|
|
|
| Предыдущая тема :: Следующая тема |
| Автор |
Сообщение |
zyu : 10 Новичок
|
Май 06, 2010 20:31 |
|
|
| Для создания виртуальных com-портов использую софтину com0com по причине её бесплатности. Но CommPortIdentifier из библиотеки RXTX не распознаёт виртуальные порты сделанные с её помошью. Помогите решить эту проблему. |
|
|
|
 |
gidravlic : 402 Бывалый Откуда: Латвия, Рига
|
Май 07, 2010 10:13 |
|
|
| Попробуйте Xport, с RXTX работает без проблем |
|
|
|
 |
Grem : 366 Бывалый Откуда: Украина, Севастополь
|
Май 07, 2010 12:30 |
|
|
| javacomm распознаёт вирт. порты |
|
|
|
 |
zyu : 10 Новичок
|
Май 08, 2010 17:38 |
|
|
Что вы подразумеваете под Xport? Я так и не сумел найти ничего связанного с затронутой темой.
Javax.comm - уже давно не поддерживается для платформы Windows и сами сановцы рекомендуют использовать rxtx. |
|
|
|
 |
Grem : 366 Бывалый Откуда: Украина, Севастополь
|
Май 08, 2010 18:54 |
|
|
| zyu писал(а): |
| Javax.comm - уже давно не поддерживается для платформы Windows и сами сановцы рекомендуют использовать rxtx. |
да, я знаю, и что? работает вполне исправно, а какая разница, поддерживает, либо нет. |
|
|
|
 |
zyu : 10 Новичок
|
Май 09, 2010 0:22 |
|
|
| На данный момент я использую Windows 7 Ultimate x64. Если rxtx хоть какие-то порты находит, то javacomm вообще ни одного. Вот такая разница. |
|
|
|
 |
Grem : 366 Бывалый Откуда: Украина, Севастополь
|
Май 09, 2010 8:27 |
|
|
| у меня Windows 7 Ultimate x86, всё находит. |
|
|
|
 |
gidravlic : 402 Бывалый Откуда: Латвия, Рига
|
Май 09, 2010 10:37 |
|
|
| zyu писал(а): |
| Что вы подразумеваете под Xport? Я так и не сумел найти ничего связанного с затронутой темой. |
http://curioustech.home.insightbb.com/xport.html
| zyu писал(а): |
Javax.comm - уже давно не поддерживается для платформы Windows и сами сановцы рекомендуют использовать rxtx. |
Совершенно верно |
|
|
|
 |
tender_swallow : 472 Бывалый Откуда: Ivanovo
|
Май 09, 2010 12:17 |
|
|
| zyu писал(а): |
Javax.comm - уже давно не поддерживается для платформы Windows. |
Работаю с Sun-овской javax.comm. Проблем вроде никаких нет......... |
|
|
|
 |
zyu : 10 Новичок
|
Май 09, 2010 12:57 |
|
|
Ну вот и всё!
В очередной раз пришлось возиться в исходных текстах чужого программного обеспечения, в данном случае rxtx. Наблюдаю там следующее. Вместо того, что бы занести в Enumerator список портов предлагаемых операционной системой с предварительной проверкой на тип порта - автор заносит в него порты удовлетворяющие условию, где наименование порта начинается с "COM", не предусмотрев то, что юзер, админ или ещё кто может это наименование изменить по своему усмотрению. Что и произошло с com0com. Эта софтина по умолчанию создаёт порты с наименованиями CNCA0 и CNCB0. Переименовав их в COM5 и COM6 у меня всё прекрасно заработало. Вообще-то я надеялся, что авторы подобных программ - rxtx, подходят к разработке более ответственно. Ну да ладно, главное сумел разобраться что к чему и решить возникшую проблему.
Всем удачи! |
|
|
|
 |
pjotar : 453 Бывалый Откуда: Санкт-Петербург
|
Май 11, 2010 20:38 |
|
|
А под Linux он будет проверять имена на *tty*?
Вообще COM-порт ужасен по различиям реализаций. Кто-то считает, что число бит данных всегда 8. Кто-то (Proteus) не умеет получать список портов и делает combo-box, предоставляя выбор: {"COM1", "COM2", "COM3", "COM4"}
В com0com дал портам имена сразу COM. Так что эти грабли пропустил
Я имел проблему с RXTX при загрузке native library. Не получилось rxtxserial.dll (.so) загружать самому из красиво названной директории, в результате для винды dll кладётся в папку с jar, а пользователей linux прошу самостоятельно установить пакет rxtx. |
|
|
|
 |
hidoyatov : 2 Новичок
|
Июн 12, 2010 13:24 |
|
|
Добрый день!
Есть некая программа для работы с кассами. У нее есть большой недостаток: кассир до закрытия смены не может посмотреть сумму проданного товара. Необходимо написать программу, которая сможет из устройства(кассы) вытягивать сумму. Касса подключена через RS-232, следовательно пока работает основная программа(для продажи) к порту не обратится. Поэтому хочу провернуть следующее: с посощью com0com создать 2 виртуальных порта, на один посадить свою программу, на другой программу продажи. Когда идет продажа, пересылать запросы на кассу(я принимаю данные с виртуального порта и посылаю на реальный(кассу) и наоборот), а когда кассир захочет посмотреть сумму послать запрос на чтение памяти.
Сталкнулся с следующей проблемой: когда происходит считывание с порта, программа вылетает на ошибку:
Native lib Version = RXTX-2.1-7pre16
Java lib Version = RXTX-2.1-7
WARNING: RXTX Version mismatch
Jar version = RXTX-2.1-7
native lib Version = RXTX-2.1-7pre16
java.lang.NoSuchFieldError: eis
at gnu.io.RXTXPort.readArray(Native Method)
at gnu.io.RXTXPort$SerialInputStream.read(RXTXPort.java:1398)
at gnu.io.RXTXPort$SerialInputStream.read(RXTXPort.java:1287)
at father.listener.serialEvent(listener.java:53)
at gnu.io.RXTXPort.sendEvent(RXTXPort.java:732)
at gnu.io.RXTXPort.eventLoop(Native Method)
at gnu.io.RXTXPort$MonitorThread.run(RXTXPort.java:1575)
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6fd83e72, pid=348, tid=760
#
# JRE version: 6.0_20-b02
# Java VM: Java HotSpot(TM) Client VM (16.3-b01 mixed mode, sharing windows-x86 )
# Problematic frame:
# C [rxtxSerial6758665920600938872.dll+0x3e72]
#
# An error report file with more information is saved as:
# C:\Users\home\Documents\NetBeansProjects\father\hs_err_pid348.log
#
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Exception in thread "Thread-3" Java Result: 1
Подскажите пожалуйста что делать!!! |
|
|
|
 |
gidravlic : 402 Бывалый Откуда: Латвия, Рига
|
Июн 13, 2010 9:08 |
|
|
Приветствую!
Разные версии нативбиблиотеки и jar файла. Там же написано. Убрать все лишние версии и поставить последнюю. |
|
|
|
 |
pjotar : 453 Бывалый Откуда: Санкт-Петербург
|
Июн 13, 2010 12:00 |
|
|
Нормально живу с варнингом о разных версиях. Покажите код, где вы читаете из порта...
Лучше всего, вырежьте проблему отдельный класс с main, потестим. |
|
|
|
 |
hidoyatov : 2 Новичок
|
Июн 14, 2010 12:17 |
|
|
Спасибо за помощь!!
Все получилось, проблема была в неправильной версии библиотеки!! |
|
|
|
 |
|
|
Страница 1 из 2 На страницу 1, 2 След. |
Список форумов
-> Файлы и потоки ввода/вывода |
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|