精华内容
下载资源
问答
  • jnative

    2012-06-03 15:38:45
    http://jnative.free.fr/SPIP-v1-8-3/article.php3?id_article=4 public class JnativeRect extends AbstractBasicData{ protected JnativeRect(JnativeRect lValue) throws NativeException { su...
    http://jnative.free.fr/SPIP-v1-8-3/article.php3?id_article=4

    public class JnativeRect extends AbstractBasicData<JnativeRect>{

    protected JnativeRect(JnativeRect lValue) throws NativeException {
    super(null);
    createPointer();
    mValue = this;
    }

    public int left;
    public int top;
    public int right;
    public int bottom;

    @Override
    public JnativeRect getValueFromPointer() throws NativeException {
    // TODO Auto-generated method stub
    return null;
    }

    @Override
    public int getSizeOf() {
    return 4*4;
    }

    @Override
    public Pointer createPointer() throws NativeException {
    pointer = new Pointer(MemoryBlockFactory.createMemoryBlock(getSizeOf()));
    return pointer;
    }

    }

    public class Demo {
    public static void main(String[] args) {
    test();
    }

    public static void test(){
    Display dis = new Display();
    Shell shell = new Shell(dis,SWT.DIALOG_TRIM|SWT.RESIZE);
    shell.setSize(800,600);
    shell.setLayout(new FillLayout());
    shell.setText("S2 Graph from SWT");
    shell.open();
    dosomething(shell);
    while(!shell.isDisposed()){
    if(!dis.readAndDispatch()){
    dis.sleep();
    }
    }
    dis.dispose();
    }
    private static void dosomething(Shell shell) {
    try {
    HWND hWnd = User32.FindWindow(null,"S2 Graph from SWT");
    //m_hPE = PEcreate(PECONTROL_SGRAPH, WS_VISIBLE, &rect, hWnd, 1001);
    System.loadLibrary("pegrp32c");// InterfaceFun是dll文件
    // 參數說明InterfaceFun dll名,AddZhiYe函數名
    JNative jnative = new JNative("pegrp32c", "PEcreate");
    // 設置此函數的返回值
    int i = 0;
    // 賦予參數值
    jnative.setParameter(i++,300);
    jnative.setParameter(i++,org.xvolks.jnative.util.constants.winuser.WindowsConstants.WS_VISIBLE);

    JnativeRect jr = new JnativeRect(null);
    jr.getPointer().setIntAt(0, shell.getLocation().x);
    jr.getPointer().setIntAt(4, shell.getLocation().y);
    jr.getPointer().setIntAt(8, shell.getLocation().x+400);
    jr.getPointer().setIntAt(12, shell.getLocation().y+400);
    jnative.setParameter(i++,jr.getPointer());

    jnative.setParameter(i++,shell.handle);
    jnative.setParameter(i++,1001);
    // 函數執行
    jnative.invoke();
    } catch (Exception e) {
    e.printStackTrace();
    }

    }
    }
    展开全文
  • JNative

    2010-06-30 17:31:49
    使用了一下JNative,调用MediaInfo.dll的动态链接库。 MediaInfo提供的源码中很多的Example 其中有各类就是Mediainfo提供给用户用JNative调用的类,把它拷到项目下就行了叫做MediaInfoDLL.JNative.java 还有一个...

    使用了一下JNative,调用MediaInfo.dll的动态链接库。

    MediaInfo提供的源码中很多的Example

    其中有各类就是Mediainfo提供给用户用JNative调用的类,把它拷到项目下就行了叫做MediaInfoDLL.JNative.java

    还有一个是交给我们怎么使用上面那个类的,做的真是周到,叫HowToUseDLL.jNative.java

    可以通过这个来学习。

    MediaInfo mi = new MediaInfo();
    mi.Open(sourceFilePath);
    mi.Option("Complete", "0");
    format = mi.Get(MediaInfo.Stream_General, 0, "Format", MediaInfo.Info_Text, MediaInfo.Info_Name);
    filesize = mi.Get(MediaInfo.Stream_General, 0, "FileSize", MediaInfo.Info_Text, MediaInfo.Info_Name);
    duration1 = mi.Get(MediaInfo.Stream_General, 0, "Duration", MediaInfo.Info_Text, MediaInfo.Info_Name);
    videoFormat = mi.Get(MediaInfo.Stream_Video, 0, "Format", MediaInfo.Info_Text, MediaInfo.Info_Name);
    videoWidth = mi.Get(MediaInfo.Stream_Video, 0, "Width", MediaInfo.Info_Text, MediaInfo.Info_Name);
    videoHeight = mi.Get(MediaInfo.Stream_Video, 0, "Height", MediaInfo.Info_Text, MediaInfo.Info_Name);
    videoFrameRate = mi.Get(MediaInfo.Stream_Video, 0, "FrameRate", MediaInfo.Info_Text, MediaInfo.Info_Name);
    audioFormat = mi.Get(MediaInfo.Stream_Audio, 0, "Format", MediaInfo.Info_Text, MediaInfo.Info_Name);
    audioBitRate = mi.Get(MediaInfo.Stream_Audio, 0, "BitRate", MediaInfo.Info_Text, MediaInfo.Info_Name);

           上面的代码可以得到视频的General,Video,Audio的信息,比如大小,时长,帧率,码率,高宽等等。

     对于其中的参数"Format"等,可以用一下代码获得,其实是在HowToUseDLL.jNative.java这个文件中的,叫做Info_Parameters。

        String File_Name = "C:\\v\\content\\uploads\\admin\\shenqi.wmv";
        if (args.length > 0)
            File_Name = args[0];
    
        String To_Display = "";
    
        //Info about the library
    
       // To_Display += MediaInfo.Option_Static("Info_Version");
    
        To_Display += "\r\n\r\nInfo_Parameters\r\n";
        To_Display += MediaInfo.Option_Static("Info_Parameters");
    
        //To_Display += "\r\n\r\nInfo_Capacities\r\n";
        //To_Display += MediaInfo.Option_Static("Info_Capacities");
    
       // To_Display += "\r\n\r\nInfo_Codecs\r\n";
        //To_Display += MediaInfo.Option_Static("Info_Codecs");
    
    
        //An example of how to use the library
    
        MediaInfo MI = new MediaInfo();
    
        To_Display += "\r\n\r\nOpen\r\n";
        if (MI.Open(File_Name)>0)
                To_Display+="is OK\r\n";
        else
                To_Display+="has a problem\r\n";
    
        To_Display += "\r\n\r\nInform with Complete=false\r\n";
        MI.Option("Complete", "1");
        To_Display += MI.Inform();
        System.out.println(To_Display);

     我这个是在windows上的,MediaInfo.dll和JNativeCpp.dll文件放在了system32下面,不知道怎么能用在linux下,持续更新中....

    展开全文
  • jnative下载

    2018-04-13 12:29:00
    JNative.jar , JNativeCpp.dll ,libJNativeCpp.so,java通过JNative调用动态dll所需的文件jar
  • java调用dll时所需的JNative.jar 以及JNativeCpp.dll(win),libJNativeCpp.so(linux) 和JNative的源码
  • JNative.rar

    2018-04-02 21:05:22
    JNative.rar JNative.rar JNative.rar JNative.rarJNative.rar
  • jnative 1.4

    2011-06-21 15:37:47
    jnative 1.4 jnative 1.4 jnative 1.4 jnative 1.4 jnative 1.4 jnative 1.4 jnative 1.4 jnative 1.4
  • jnative.rar

    2021-03-26 14:20:12
    采用JNative方式Java调用dll的必用jar包和源码以及必须的dll
  • JNative1.3.2

    2010-11-29 15:45:01
    JNative1.3.2,jNative-1.3.2src
  • Jnative资源包源码

    2018-02-06 17:08:40
    Jnative资源包源码Jnative资源包源码Jnative资源包源码Jnative资源包源码Jnative资源包源码Jnative资源包源码
  • jnative 使用

    2017-10-03 17:50:00
    JNative_1.4RC2_src.zip :http://jaist.dl.sourceforge.net/sourceforge/jnative/JNative_1.4RC2_src.zip JNative.jar :http://nchc.dl.sourceforge.net/sourceforge/jnative/JNative.jar 如果以上版本不能完...

    下载地址:

    JNative_1.4RC2_src.zip : http://jaist.dl.sourceforge.net/sourceforge/jnative/JNative_1.4RC2_src.zip

    JNative.jar : http://nchc.dl.sourceforge.net/sourceforge/jnative/JNative.jar

    如果以上版本不能完成下载,说明版本有可能更新,请从以下地址中下载:

    Resource URL: http://jnative.sourceforge.net/ 

    Source Code: http://sourceforge.net/projects/jnative 

    Detailed Review: http://jnative.free.fr 

    JavaDOC: http://jnative.free.fr/docs/

    JNative相对于其它同类开源组件的优点:

    1.容易使用

    2.对数据类型的处理做的出色

    3.支持CallBack

    下面以一个小Demo来学习一下JNative:

    1.理解文件用途

    JNative_1.4RC2_src.zip是JNative源代码的压缩包把它解压后从中找到libJNativeCpp.so和JNativeCpp.dll两个文件.JNativeCpp.dll应用在Windows平台下.把它放在c:\windows\system32目录下.libJNativeCpp.so应用在Linux平台下.放在哪个目录,这个我不知道.

    把JNative.jar加入到所需的工程中.

    把要调用的dll文件也放在c:\windows\system32目录下, 这个目录存在一个文件,

    2.测试类

     

    Java代码  收藏代码
      1. package sms;  
      2.   
      3. import org.xvolks.jnative.JNative;  
      4. import org.xvolks.jnative.exceptions.NativeException;  
      5. import org.xvolks.jnative.pointers.Pointer;  
      6. import org.xvolks.jnative.pointers.memory.MemoryBlockFactory;  
      7.   
      8. public class SystemTime extends org.xvolks.jnative.util.Kernel32.SystemTime {  
      9.         public short wYear;  
      10.         public short wMonth;  
      11.         public short wDayOfWeek;  
      12.         public short wDay;  
      13.         public short wHour;  
      14.         public short wMinute;  
      15.         public short wSecond;  
      16.         public short wMilliseconds;  
      17.        /** 
      18.         * 分配内存,并返回指针 
      19.         */  
      20.        public Pointer createPointer() throws NativeException {  
      21.            pointer = new Pointer(MemoryBlockFactory.createMemoryBlock(getSizeOf()));  
      22.            return pointer;  
      23.        }  
      24.   
      25.        /** 
      26.         * 内存大小 
      27.         */  
      28.        public int getSizeOf(){  
      29.            return 8 * 2;  
      30.        }  
      31.   
      32.        /** 
      33.         * 获取通过内存指针解析出结果 
      34.         */  
      35.        public SystemTime getValueFromPointer() throws NativeException {  
      36.            wYear = getNextShort();  
      37.            wMonth = getNextShort();  
      38.            wDayOfWeek = getNextShort();  
      39.            wDay = getNextShort();  
      40.            wHour = getNextShort();  
      41.            wMinute = getNextShort();  
      42.            wSecond = getNextShort();  
      43.            wMilliseconds = getNextShort();  
      44.            return this;  
      45.        }  
      46.   
      47.        public SystemTime() throws NativeException{  
      48.            super();  
      49.            createPointer();  
      50.        }  
      51.   
      52.        public String toString(){  
      53.            return wYear + "/" + wMonth + "/" + wDay + " at + " + wHour + ":" + wMinute + ":" + wSecond + ":" + wMilliseconds;  
      54.        }  
      55.   
      56.        public static SystemTime GetSystemTime() throws NativeException, IllegalAccessException {  
      57.            // 创建对象  
      58.            JNative nGetSystemTime = new JNative("Kernel32.dll", "GetSystemTime");  
      59.              
      60.            //GetSystemTime  是dll中的方法  
      61.            SystemTime systemTime = new SystemTime();  
      62.            // 设置参数  
      63.            nGetSystemTime.setParameter(0, systemTime.getPointer());  
      64.            //执行方法  
      65.            nGetSystemTime.invoke();  
      66.            // 解析结构指针内容  
      67.            return systemTime.getValueFromPointer();  
      68.        }  
      69.   
      70.        public static void main(String[] args) throws NativeException, IllegalAccessException{  
      71.            System.err.println(GetSystemTime());  
      72.                
      73.        }  
      74.         
      75. }  

    转载于:https://www.cnblogs.com/ouyangping/p/7624030.html

    展开全文
  • JNative所有文件

    2018-05-21 14:15:55
    JNative调用c++编写的DLL文件必要的jar包和相关必要文件
  • JNative资源包

    热门讨论 2016-05-26 09:01:50
    采用JNative方式Java调用dll的必用jar包和源码以及必须的dll
  • JNative.jar

    2014-10-26 19:31:39
    附件包含JNative.jar和JNative_1.4RC2_src.zip
  • Jnative API CHM

    热门讨论 2010-10-18 16:01:01
    Jnative API CHM Jnative API CHM Jnative API CHM Jnative API CHM
  • jnative简单的使用

    2011-09-11 15:37:57
    jnative jnative jnative jnative
  • JNative-1.3.2.zip

    2020-08-03 11:22:32
    JNative.jar , JNativeCpp.dll ,libJNativeCpp.so,java通过JNative调用动态dll所需的文件jar
  • jxl jdom jnative

    2013-09-12 02:34:42
    jxl jdom jnative
  • jnative的jar包

    2019-04-09 16:54:01
    亲测可用的jnative工具包,主要用来进行clob以及blob大字段处理时的应用以及其他的应用
  • org.xvolks.jnative 源码

    2020-05-27 10:54:13
    org.xvolks.jnative 源码
  • JNative jar包

    2010-04-15 14:07:17
    JNative jar包JNative jar包
  • Jnative 1.4 API

    2014-03-07 17:01:28
    JNative 1.4 API 包含 API文档 源文件 JAR包等 内附在线API地址查询 具体内容请看说明文档
  • JNative调用依赖包

    2021-04-16 10:21:56
    一、JNative调用依赖包 每当在csdn上看到那些传个官方jar包就要收费的blog,就心生厌恶,又不是你自己原创,有什么资格要c币和积分!? JNative官方主页: 这是官网documenthttp://jnative.free.fr/SPIP-v1-8-3/ ...

    一、JNative调用依赖包

    每当在csdn上看到那些传个官方jar包就要收费的blog,就心生厌恶,又不是你自己原创,有什么资格要c币和积分!?

    JNative官方主页:

    这是官网document http://jnative.free.fr/SPIP-v1-8-3/

    这里是下载地址 http://sourceforge.net/projects/jnative/

    说明:

    JNative_1.4RC2_src.zip里面是dll和so文件

    JNative_1.4RC3_bin.zip里面是JNative.jar包

    二、使用

    1、前置条件

    jNative依赖的是jdk 32位,所以这里为了你在验证的时候不出乱子,jdk你下载32位的就行了,

    从JNative_1.4RC2_src.zip里取出JNativeCpp.dll:

    操作系统32位、64位均可,

    32位系统调用dll:将要调用的dll文件放入C:\Windows\System32

    64位系统调用dll:将要调用的dll文件放入C:\Windows\SysWOW64

    JNative_1.4RC3_bin.zip里面取出JNative.jar:

    • JNative.jar 这是一个扩展包,导入工程LIB中或将其拷贝到jdk\jre\lib\ext 下,系统会自动加载,maven(gradle)可以放在本地仓库

    2、测试案例

    如果报错含有System.LoadLibrary(),这说没有找到  JNativeCpp.dll 路径,可以用以下方式强制设置

    System.setProperty("jnative.loadNative","C:\\Windows\\SysWOW64\\JNativeCpp.dll");

    public static void testString(){
            System.setProperty("jnative.debug", "true");
            System.setProperty("jnative.loadNative","C:\\Windows\\System32\\JNativeCpp.dll");
            JNative n3 = null;
            try {
                n3 = new JNative("你需要调用的.dll", "dll里面你需要调用的方法名");
                n3.setRetVal(Type.STRING);
                String inputString = "kun";
                String outputString = "";
                Pointer p4 = Pointer.createPointerFromString(inputString);
                Pointer p5 = Pointer.createPointerFromString(outputString);
                n3.setParameter(0, p4);
                n3.setParameter(1, p5);n3.invoke();
                System.out.println("例3:outputString = "+n3.getRetVal());
                p4.dispose();
                p5.dispose();
            } catch (NativeException e) {
                e.printStackTrace();
            } catch (IllegalAccessException e) {
                e.printStackTrace();
            }
        }

     

     

     

     

     

    展开全文
  • JNative使用示例

    2011-08-18 16:53:13
    TestJNative_Eclipse.rar 为MyEclipse工程 JNativeTest_VC.rar为VC ...主要写了一些JNative调用DLL的例子,包含了JNative回调函数的用法与指针的用法,以供参考,希望对使用JNative的开发人员有帮助 有问题大家一起讨论
  • JNative_jar.zip

    2019-07-12 15:51:03
    这是Java,Android调用dll文件,.so文件的框架 简单易用,里面包含JNativeCpp.dll,libJNativeCpp.so,JNative.jar三个完整文件
  • 学习JNative

    千次阅读 2015-03-26 18:07:02
    由于项目要求,需要用Java调用windows的dll文件,查了一下,如果用JNI的话是比较麻烦的,在sourceforge.net上搜索了一下“Java dll”,首先出现的是Jnative,于是决定用它,后来也试了些别的,但还是JNative好使,...
  • jnative源码和例子

    2013-12-10 16:53:31
    jnative源码和例子

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 477
精华内容 190
关键字:

jnative