發現問題
最近工作中利用JNA 調用 dll 庫時保錯,錯誤如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
///////////////// 通過 JNA 引入 DLL 庫 //////////// /** * ID_FprCap.dll 負責指紋的采集, 指紋儀的初始化,設置等等 */ public interface ID_FprCap extends StdCallLibrary { ID_Fpr fpr = ID_Fpr.INSTANCE ; ID_FprCap fprCap = (ID_FprCap)Native.loadLibrary( "ID_FprCap" , ID_FprCap. class ); /** * 初始化指紋采集器 * @return 成功返回1,分片資源,檢查權限,在所有接口函數中,通常首先調用此函數。只需要調用一次,允許重復調用 * 其結果和一次調用相同。出錯調用 LIVESCAN_GetErrInfo獲取錯誤信息 */ public int LIVESCAN_Init(); /** * 關閉采集器,釋放資源. 調用此函數之后,在沒有調用 LIVESCAN_Init之前,僅可調用LIVESCAN_GetVersion、LIVESCAN_GetDesc、 * LIVESCAN_GetErrorInfo函數。調用此函數之后,需要重新調用LIVESCAN_Init來初始化采集器. * @return 成功返回1. 出錯調用 LIVESCAN_GetErrInfo獲取錯誤信息 */ public int LIVESCAN_Close(); |
我環境是 64 位 win7.
java.lang.UnsatisfiedLinkError: %1 不是有效的 Win32 應用程序。
解決方法:刪掉了系統中的 64 位的 JDK,就沒有再報該錯誤了。
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。