typedef USHORT apiReturn;apiReturn _stdcall ConnectScanner(HANDLE *hScanner, char *szPort, int nBaudRate);上面是VC 的DLL 一个函数的声明,,用JNA方法时,如何声明呢?
 DLL 文件的名字 2200DLL.DLL  
 注:本人结贴及时,无未结题。
 

解决方案 »

  1.   

    应该是JNI吧
    http://caoruntao.javaeye.com/blog/650848
      

  2.   

    不要JNI 方法,,这个貌似要重新 封装DLL文件JNA 据说不要
      

  3.   

    JNA没用过。
    等楼下给你解释吧!
      

  4.   

    HANDLE*,要么用返回的Pointer,要么自己建一个对象传进去。int ConnectScanner(Pointer hScanner, byte[] szPort, int nBaudRate)
      

  5.   

    楼上的能具体点么 ?
    JAVA 咱是菜鸟,没看明白, 创建对象是啥玩意?
      

  6.   

    两个 native 都可以调用 同一个方法。typedef struct _Temp {
        int value;
    } Temp;void g(Temp* arg0);
        private static native void g(Temp arg0);    private static native void g(Pointer p);    public static void main(String[] args) throws Exception {
            g(new Temp());
            Pointer p = null;
            g(p);
        }    public static class Temp extends Structure {        public int value;
        }
      

  7.   

    不是用javah就能生出头文件嘛,生成的头文件就有声明。
      

  8.   

    Pointer 一般都是调用 dll 返回的。
    几乎不会去new Pointer()。