Cara posso te ajudar nisso,pois ja quebrei tambem muito a cabeça com isso,hehehe.Isso acontece se você na hora de dar o loadLibrary não está passando o Path correto da Dll,isso as vezes é chato,para contornar isso crie um arquivo properties certo,e nesse arquivo defina uma variavel com o path da sua Dll ok(Exemplo variavel = c:\minhaDll).Logo apos copie esse codigo :
[code]InputStream propFileStream = this.getClass().getClassLoader().getResourceAsStream("resources/meuArquivo.properties");
Properties p = new Properties();
p.load(propFileStream);
// Captura as variáveis do arquivo de propriedades
path = p.getProperty("variavel");
// Carrega a dll localizada no path capturado do arquivo de propriedades
System.load(path + "/minha.dll");[/code]