`

java 通过jna 调用 dll

    博客分类:
  • c++
 
阅读更多
java 通过jna 调用 dll

1、引入jna jar包

		<dependency>
			<groupId>net.java.dev.jna</groupId>
			<artifactId>jna</artifactId>
			<version>4.1.0</version>
		</dependency>


2、Java代码如下


import com.sun.jna.Library;

import com.sun.jna.Native;

import com.sun.jna.Platform;

 


public class DllTest {

 

    public interface CLibrary extends Library {

        CLibrary INSTANCE = (CLibrary)

            Native.loadLibrary((Platform.isWindows() ? "libdll.dll" : "libdll.so"),

                               CLibrary.class);

         public int add(int a,int b);
         public int sub(int a,int b);
    }

 

    public static void main(String[] args) {

        int b = CLibrary.INSTANCE.add(2, 4);

        System.out.println(b);
        
        
        int c = CLibrary.INSTANCE.sub(5, 3);
        System.out.println(c);

    }

}
分享到:
评论

相关推荐

    java用JNA调用dll实例,包含各种参数调用

    本示例项目"JNA_Demo"应该包含了一些具体的DLL调用案例,通过阅读源码,你可以更深入地了解如何在不同情况下使用JNA调用DLL函数。实践是最好的老师,建议结合示例逐步学习和理解这些概念,以便在实际项目中灵活运用...

    java jna 调用dll例子

    在本例中,“java jna 调用dll例子”指的是使用JNA在Java应用程序中调用Windows上的动态链接库(DLL)文件,这里特别提到了大华SDK的Dll,这通常用于处理视频流和视频播放功能。 大华SDK( Dahua Software ...

    JNA调用DLL完整实例demo

    在“JNA调用DLL完整实例demo”中,我们首先需要创建一个Java接口,这个接口将代表DLL中的函数。例如,如果DLL中有一个名为`recvWork`的函数,我们的Java接口可能会这样定义: ```java public interface ...

    亲测可用,java 成功调用dll函数。包含调用回调函数,springboot版本。最近由于公司业务需要,要调用dll文件,用JNA调用。

    在Java通过JNA调用DLL时,如果DLL函数需要一个回调函数作为参数,那么Java需要定义一个接口,该接口的方法将作为回调函数的实现,JNA会处理这个接口的调用转换。 4. **Spring Boot**:Spring Boot是基于Spring框架...

    Jna调用dll实例

    总结来说,JNA调用DLL的关键步骤包括:定义DLL接口,加载DLL,调用DLL函数,并处理可能出现的编码问题。本实例提供了一个具体的应用场景,有助于理解JNA调用DLL的过程,并解决了常见的中文乱码问题。通过学习和实践...

    通过JNA让Java调用Dll方法

    研究java调用dll的时候,大部分都是通过jni,比较麻烦,我找到了通过jna方法调用dll的方法,用起来比较方便,只需要引用jna.jar包,这个jar包已经包含在程序中,还包含了我调用dll的遇到难道的解决办法。

    Java通过JNA调用系统API

    本文将详细介绍如何使用Java通过JNA调用系统API,以Windows系统为例,重点讲解如何调用`Kernel32.dll`中的`GetLocalTime()`, `GetSystemTime()` 和 `SetLocalTime()` 方法。 1. **Java Native Access (JNA)**: JNA...

    JAVA利用JNA调用DLL

    在Java编程环境中,有时我们需要与操作系统底层功能进行交互,例如调用C语言编写的动态链接库(DLL)函数。在这种情况下,Java Native ...JNA测试项目"JNATest"可能包含一个完整的示例,演示如何从Java调用DLL并运行。

    JNA java调用dll

    Java Native Access(JNA)是Java平台上的...总的来说,Java通过JNA调用DLL是一种在Java中利用本地系统功能的有效手段,它降低了与本地系统交互的复杂性,使得开发者可以专注于Java代码的编写,而无需深入C/C++的世界。

    jna调用dll完成demo实例, 超简单

    本实例将详细介绍如何使用JNA调用DLL动态链接库,通过一个超简单的Demo来展示其过程。 首先,我们需要了解JNA的基本工作原理。JNA通过映射Java方法到本地库中的函数,实现了跨语言的通信。在Java中,我们定义一个...

    使用JNA替代JNI调用DLL,并解决内存溢出问题

    在使用JNA调用DLL的过程中,可能会遇到内存溢出的问题。这类问题通常发生在处理大量数据或长时间运行的应用场景中。为了避免这种情况,可以采取以下措施: - **优化数据结构**:合理设计数据结构,减少不必要的数据...

    java调用C#封装的dll(jna,com)

    java调用C#封装的dll(jna,com)java调用C#封装的dll(jna,com)java调用C#封装的dll(jna,com)

    Java通过JNA调用TSCLIB.dll控制热敏打印机打印二维码

    Java使用JNA调用TSCLIB来控制热敏打印机生成二维码并打印,对纸张的定位做了控制,不会出现连续打印后纸张位置错位,需要自己准备TSCLIB.dll文件,放在Windows/System32下,代码可以直接使用。

    jna调用C++dll

    本示例将探讨如何使用JNA调用C++编写的动态链接库(DLL)以及如何实现从DLL到Java的回调功能。 首先,我们需要理解JNA的工作原理。JNA通过映射Java接口到C函数来实现调用。这些接口定义了C++ DLL中的函数签名,使得...

    自己写的dll文件,用以java jna调用测试用途

    自己写的dll文件,用以java jna调用测试用途自己写的dll文件,用以java jna调用测试用途自己写的dll文件,用以java jna调用测试用途自己写的dll文件,用以java jna调用测试用途

    JNA 调用dll jna调用 c++

    在标题和描述中提到的“JNA调用dll jna调用c++”是指利用JNA来调用Windows系统中的动态链接库(.dll)文件,这些.dll文件通常由C++或其他支持编译为本地代码的语言编写。 本文将详细介绍如何使用JNA进行dll调用,并...

    JNA方式实现Java调用dll的必用jar包

    标题"JNA方式实现Java调用dll的必用jar包"指的是使用JNA库来调用Windows平台上的动态链接库(.dll文件)所需的Java类库。这个"jna5.jar"文件是JNA的一个版本,其中包含了所有必要的组件,使得Java程序能够通过JNA...

    jna jar实现java调用dll

    通常,这可能是一个测试类或者包含主方法的Java文件,用于演示如何使用JNA调用DLL的具体代码。由于没有详细文件内容,我们将基于JNA的一般用法进行讨论。 在Java中使用JNA调用DLL的基本步骤如下: 1. **添加JNA库*...

    JNA调用DLL函数.rar

    标题 "JNA调用DLL函数" 涉及的核心知识点是Java Native Access (JNA) 和如何通过JNA调用Windows Dynamic Link Library (DLL) 文件中的函数。在Java编程环境中,JNA提供了一种无需编写JNI(Java Native Interface)...

Global site tag (gtag.js) - Google Analytics