Alguém já instalou a commapi?

13 respostas
S

Olá pessoal, tudo bem?
EStou tentando instalar a api comm e não estou obtendo exito. No autoexec.bat ficou assim:

SET JAVA_HOME=c:java SET PATH=%PATH%;%JAVA_HOME%in SET CLASSPATH=.;%JAVA_HOME%;c:javalibcomm.jar;c:commapisamplesBlackboxBlackBox.jar

Procurei fazer como estava no manual da api. EStou tentando no win98 e no 2000server. Alguém conseguiu?[/b]

13 Respostas

S

Beleza galera?
Consegui fazer a api funcionar! Só não consigo capturar os eventos da porta paralela. Se alguêm souber usar a classe ParallelPort me dê uma força, pois tá difícil! Desde já agradeço!

carioca

Posta como fez a mesma funcionar…

S

Não sei não mas acho que foi alarma false. Digo isso porque no win2kserver não está dando certo.
Simplesmente não carrega o jar.
Nas varaveis de ambiente está assim:

JAVA_HOME=c:java

PATH=%PATH%;%JAVA_HOME%in

CLASSPATH=.;%JAVA_HOME%; c:javalibcomm.jar; c:commapisamplesBlackboxBlackBox.jar

No win98 fiz do jeito que está no post acima.
Desde já agradeço! :!:

S

Pelo que li desta api, o javax.comm.ParalellPort é uma classe abstrata.
Como trabalhar com uma classe abstrata se não é possivel instanciá-la? Como acessar seus métodos?

ozielneto

http://java.sun.com/products/javacomm/

Bom estudo.

A

Alguém realmente conseguiu instalar corretamente a CommAPI?

Eu não consigo ver as portas no programa exemplo SerialDemo.

Agradeço qualquer ajuda.

Acir

smota

Eu já instalei … e não tive problemas.

Siga EXATAMENTE (exatamente significa, não imagine que nao tem portancia, leia tudo e faça) as instruções que dá certinho.

Lembre-se de verificar se vc está instalando na jre certa (eu tinha duas e acabei instalando em uma que não estava no path, na hora de usar nao dava certo por causa disso).

[]s

A

Obrigado pela resposta.

Fiz EXATAMENTE o recomendado, ou seja, as instruções entre ***************************** abaixo.

Também tive cuidado com duas instalações. Mesmo assim os exemplos não conseguem achar as seriais.

Chequei as seriais, o Windows as reconhece normalmente. Tenho duas… já testei com um cabo null modem e hyperterminal. Tudo parece estar OK.

Só não consigo fazer os exemplos SerialDemo e BlackBox encontrarem as seriais.

Mesmo assim obrigado.


Copy win32com.dll to your <JDK>in directory.

C:>copy c:commapiwin32com.dll to c:jdk1.1.6in

Copy comm.jar to your <JDK>lib directory.

C:>copy c:commapicomm.jar c:jdk1.1.6lib

Copy javax.comm.properties to your <JDK>lib directory.

C:>copy c:commapijavax.comm.properties c:jdk1.1.6lib
The javax.comm.properties file must be installed. If it is not, no ports will be found by the system.

Add comm.jar to your classpath (do not do this step for a JRE installation).
If you don’t have a classpath defined:

C:>set CLASSPATH=c:jdk1.1.6libcomm.jar

If you already have a classpath defined:

C:>set CLASSPATH=c:jdk1.1.6libcomm.jar;%classpath%

Several serial port sample applications are provided with this release. One of them is BlackBox. To run BlackBox, first add BlackBox.jar to your classpath:

C:>set CLASSPATH=c:commapisamplesBlackboxBlackBox.jar;%CLASSPATH%

Now you can run BlackBox:

C:>java BlackBox


Luca

Olá

O que realmente não conseguiu fazer?

No Windows a API javax.comm NÃO consegue ler status da porta paralela, repito, com outras palavras: javax.comm NÃO consegue configurar a porta paralela em modos bidirecionais que permitam ler a porta. Um dia com mais tempo explicarei porque.

Para ler a porta paralela e saber se a impressora está ligada, sem papel ou ocorreu erro na impressão você precisa de um device driver fornecido pelo fabricante da impressora e acessar por JNI.

De resto funciona bem. Se seu problema é abrir uma porta serial então há alguma outra aplicação usando a porta e vc não consegue abri-la. Mas se as portas existem, e estão disponíveis, então desde que configuradas corretamente devem abrir.

PS: Este seu Java parece bem antigo. Será compatível com javax.comm?

[]s
Luca

A

Olá Luca,

Obrigado pelas dicas.

Eu consegui compilar e executar o SerialDemo, contudo o programa não consegue listar na ComboBox as portas disponíveis.

Eu já li em algum lugar que se isto ocorresse seria problema com o arquivo javax.comm.properties. Eu segui as instruções de “instalação” do arquivo, mas não deu certo.

Outra coisa que li, foi sobre “registrar a win32com.dll”. Tentei de tudo, mas não consegui listar as seriais.

Quanto a paralela, ainda chegarei lá.

Sobre o meu java, narealidade eu dei “copiar colar” da instrução da commAPI. Estou com a versão j2sdk1.4.2_02.

Obrigado pelo retorno.

Agradeço qualquer ajuda.

[]s

Acir

Luca

Olá

Acir, para instalar javax.comm basta copiar a win32com.dll para o diretório bin da jre (ou JAVA_HOME), copiar o arquivo javax.comm.properties para o diretório lib da jre (ou JAVA_HOME) e incluir comm.jar no seu war (se for o caso). Não precisa registrar nada.

A documentação é bem fraquinha. Precisa mesmo ler e executar os exemplos com debug. Ajuda também fazer engenharia reversa para ver os diagramas de classe da API e passar o decompilador.

Não sei dizer porque não lista as portas. Tente outros exemplos, quem sabe descobre onde está o problema.

[]s
Luca

A

Olá pessoal,

Consegui listar as portas.

Consegui, após baixar o Eclipse e verifiquei que havia havia um problema na definição do classpath para a comm.jar.

Inicialmente, trabalhando apenas na linha de comando (javac e java)minha opção inicial do classpath era:
set classpath=%classpath%;C:j2sdk1.4.2_02libcomm.jar
Não funcionava.

Por acaso, no Eclipse, apontei para:
set classpath=%classpath%;C:CODEJAVAcommapicomm.jar;.
E deu certo.
Tentei na linha de comando com o novo classpath e deu certo.

Voltei para o Classpath inicial e verifiquei que funcionava no Eclipse e não na linha de comando … mistérios da informática.

De qualquer forma, agora está tudo OK, mesmo não entendendo a limitação para listar as comm ports na linha de comando.

Obrigado,

Acir

D

Pessoal,
tive um problema parecido quando tentei instalar a API em casa onde tenho uma máquina com Windows XP, eu tinha instalado na mesma o j2sdk1.4.2_04 e segui os passos indicados no manual da API, colocando os arquivos “comm.jar e javax.comm.properties” dentro do diretório lib e o arquivo win32com.dll dentro do diretório bin do j2sdk1.4.2_04, sendo que também tentei colocar os mesmos dentro de C:\j2sdk1.4.2_04\jre\lib e C:\j2sdk1.4.2_04\jre\bin respectivamente, ao executar pelo Eclipse funcionava sem problemas, mas fora dele não conseguia fazer funcionar. Foi então que instalei o j2re1.4.2_04 que cria uma pasta Java dento de Arquivos de Programas, então coloquei os arquivos “comm.jar e javax.comm.properties” dentro de C:\Arquivos de programas\Java\j2re1.4.2_04\lib e o arquivo “win32com.dll” dentro de C:\Arquivos de programas\Java\j2re1.4.2_04\bin, a partir de então começou a funcionar e consegui acessar as portas COM e LPT sem problemas de dentro do Eclipse bem como fora dele. Espero ter ajudado. Abraços!

Criado 10 de novembro de 2003
Ultima resposta 23 de nov. de 2004
Respostas 13
Participantes 7