Bom dia pessoal do GUJ.
Sou novo aqui e tb não muito experiente em java. Estou com uma dúvida quanto ao uso do JNA e gostaria de pedir ajuda para vocês que tem boa bagagem e experiência.
Problema é assim: Estou fazendo um código em java (tentando uso do JNA) para me comunicar com relógio ponto da empresa. A linguagem da dll dos relógios é em delphi, e eu tenho acesso as assinaturas dos métodos.
Minha dúvida consiste basicamente em como eu vou declarar estes parâmetros dos métodos no meu código java qdo eles não são do tipo primitivo.
A príncipio eu só quero fazer meu programa se conectar ao relógio e enviar um beep e apartir dai eu posso continuar (pois vou saber que há possibilidade). Não creio q isto não possa ser possível pois pelo que entendi é justamente para estas situações que o JNA foi criado.
Meu código esta bem simples, eu fiz seguindo todos os passos que o Urubatan sugeriu no seu blog:
Minha interface
package teste;
import com.sun.jna.Library;
interface InterfaceBip extends Library {
public int AdicionaCardTcpip(String pIp, int pPorta, String pCatraca, String pModoComunicacao);
public String EnviaBeep(int pThreadIndex, String pBeep);
}
Minha classe (já com os erros na imagem de baixo)
package teste;
import com.sun.jna.Native;
public class ClasseBip {
InterfaceBip bip = (InterfaceBip) Native.loadLibrary(“Kernel7x”, InterfaceBip.class);
bip.AdicionaCardTcpip(“192.168.0.56”,3000,"",“cmcOffline”);
bip.EnviaBeep(0,“cbliberado”);
}
}
Assinatura dos métodos que estou usando:
AdicionaCardTcpip(pIp, pMac : WideString; pPorta : Integer; pCatraca :
WordBool; pModoComunicacao : SModoComunicacao) : Integer;
EnviaBeep(pThreadIndex: Integer; pBeep: SBeep): WordBool;
Agradeço desde já quem puder me ajudar, pois estou sem saber o q fazer já.
Toda ajuda é bem vinda.
[aB[R]Aç[[o]]s]
[[|]] 'Até