<RESOLVIDO>JNA fora do Netbeans não encontra a DLL
10 respostasResolvido
java
J
Jns_Vieira
Estou acessando DLLs usando JNA e dentro do Netbeans funciona normalmente, porém quando compilo meu projeto e executo o programa através do arquivo .jar o sistema não consegue encontrar a DLL e apresenta o seguinte erro: Unable to load library ‘C:\Users\jonas\Documents\NetBeansProjects\SysPDV/dllsatelgin32Bts.dll’: Não foi possível encontrar o módulo especificado.
Unable to load library ‘C:\Users\jonas\Documents\NetBeansProjects\SysPDV/dllsatelgin32Bts.dll’: Não foi possível encontrar o módulo especificado.
R
rodrigo.dev
Tenta usar essa barra “/” como separador de caminho ao invés dessa “”.
E confirma o caminho do arquivo, pega essa uri que ele tá reclamando cola no Explorer sem a parte do dll no final, pra ver de chega na pasta
J
Jns_Vieira
Já tentei usar essa barra, mas nada, já coloquei a DLL em outra pasta, já dei permissão na pasta onde está a DLL e se eu colocar o caminho no Explorer chega na pasta sim.
O mais estranho é que testei 4 computadores diferente, e em um deles o sistema conseguiu encontrar a DLL
R
rodrigo.dev
Já tentasse rodar o jar como administrador ?
J
Jns_Vieira
Eu até tentei, mas não achei a opção para fazer isso no .jar, até mesmo se eu criar um atalho o jar não tem a opção de executar com ADM
R
rodrigo.dev
Se clicar com o direito do mouse e ir em propriedades -> compatibilidade, lá tem um checkbox pra executar como administrador
J
Jns_Vieira
No .jar não tem, isso geralmente aparece em .exe
J
Solucao aceita
Jns_Vieira
Depois de muito tentar consegui descobrir qual era o problema… a DLL que eu estou utilizando é 32bits e a versão do JDK instala para usar o Netbeans é 32 bits, porém eu tinha uma versão de 64 bits no meu PC e o sistema operacional utilizava ela como default, já que o meu Windows é 64 bits, então eu desinstalei a versão 64 bits e problema resolvido.