Acesso a DLL c/c++ sem uso de JNI ou Corba

7 respostas
J

Tem como acessr uma dll em c/c++ sem uso de jni ou corba…

7 Respostas

Rafael_Steil

Nao.

Rafael

Luca

Olá

O acesso normal é com JNI. CORBA pode ser usado dependendo de algumas condições especiais. E há algumas outras alternativas (algumas pagas) mais especiais ainda.

Use JNI que é o feijão com arroz.

[]s
Luca

F

existe algum exemplo de acesso a uma dll com jni?

smota

Existe!

louds

Acredito que as outras opções sejam mais dificeis que usar JNI ou corba.

Procura no google/sourceforge que existem ótimos wrappers pra JNI que te facilitam muito…

Luca

Olá

Quando respondi que haviam outros meios sendo alguns pagos, estava pensando justamente nos wrappers. Então fiquei com a consciência pesada porque a resposta correta da pergunta foi o que disse o Rafael, isto é, não. Os wrappers usam JNI por debaixo dos panos.

Mas ainda acho JNI tão fácil de usar que não imagino porque eu pagaria por uma lib só para encapsular a API padrão. Ou então porque a gente iria gastar tempo aprendendo novas APIs só para fazer algo assim:import com.excelsior.xFunction.*; ... /* Call Beep(1770,100) from KERNEL32.DLL */ xFunction f = new xFunction("kernel32", "int Beep(int,int)"); f.invoke(new Argument(1770), new Argument(100));
[]s
Luca

louds

“Luca”:
Olá

Quando respondi que haviam outros meios sendo alguns pagos, estava pensando justamente nos wrappers. Então fiquei com a consciência pesada porque a resposta correta da pergunta foi o que disse o Rafael, isto é, não. Os wrappers usam JNI por debaixo dos panos.

Da para usar algumas libs fazendo altas gambiarras com scripts shells e System.exec(), mas acaba sendo pior que JNI direto, por exemplo.

Os wrappers são bons para pessoas que não querer ter que aprender a API e o modelo de programação do JNI; que são chatinhos IMHO, esquecer de verificar por exceptions ou liberar 1 array e boom!, o software vai ter bugs muito dificeis de achar.

Outra coisa legal desses wrappers é que dado 1 include em C eles tem cospem classes java e fontes C prontos. Dai para escrever classes java que encapsulam de forma OO esses recursos é muito mais facil e produtivo.

Criado 7 de julho de 2004
Ultima resposta 7 de jul. de 2004
Respostas 7
Participantes 6