Wagner,

Algum tempo atrás eu passei por uma situação parecida, eu tinha que
desenvolver uma aplicação em Java para um Terminal de Alto Serviço "TAS",
esse terminal é da Procomp, portanto a Procomp fornecia as DLL para a
conexão com todos os periféricos dess TAS, que eram impressora, teclado
lateral, pin pad, etc... tinha alguns terminais que tinham até câmeras.

Bom, para resolver esse problema a solução que encontrei foi utilizar JNI -
Java Native Interface, dê uma olhada no site da SUN, lá você encontratá
muitas informações sobre isso.

A solução se constitui em :

- Ter o JDK instalado na máquina do desenvolvedor;
- Saber programar em C, e utilizar um compilador para windows, talvez o
Visual C;

Do JDK você utilizará o programa javap e uma biblioteca do diretório lib e
alguns arquivos do diretório include.

Você deve conhecer o funcionamento da DLL, saber quais funções você deverá
utilizar quais são os retornos das funções, etc... então,

Você deverá criar uma classe em Java acrescentando aos metodos o modificador
"native", esses métodos não tem nenhum código, você deverá declará-los como
se fossem métodos abstratos, ou seja,... public native int
configurePrinter(int x);

Depois, deverá compilar essa classe com o comando java .... e logo em
seguida utilizar o comando javah para gerar um arquivo *.h include com os
protótipos das funções.

Criar um programa C adicionar o *.h gerado e implementar os prótotipos, que
no seu caso, você deverá carregar a DLL nesse seu programa, e através das
suas funções você deverá chamar as funções da DLL. SERIA UMA INTERFACE ENTRE
A CLASSE JAVA E A DLL.

Tudo isso significa que quando o seu programa chamar um metodo (native) na
verdade será um programa C que fará tudo.

Atenção, esse seu programa C também deverá ser uma DLL, portanto, você
deverá carregar somente essa DLL em seu programa Java, ou seja, utilizar o
System.loadLibrary("DDDDDLLLL");


Espero que você consiga entender a minha explicação, mas no site da SUN tem
muitas informações sobre isso.


valeu

Fábio Alexandre Rodrigues






-----Mensagem original-----
De: Wagner Roberto Sorio [mailto:sorio@;itapemirimcorp.com.br]
Enviada em: quinta-feira, 14 de novembro de 2002 8:23
Para: [EMAIL PROTECTED]
Assunto: [java-list] DLL em Java


Pessoal, estou precisando passar comandos para uma impressora ECF pela
linguagem Java, o fabricante da Impressora fornece uma DLL com todas as
funções para utização da Impressora. Alguém conhece alguma forma de como
utilizar DLL com Java ?
Se alguém já utiliza e poder me enviar um exemplo eu ficarei muito
agradecido.

WAGNER ROBERTO SORIO
   Analista de Sistemas
    Depto. Informática 
 Viação Itapemirim - SP
   TEL.: (11) 6465-8537




------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------

Responder a