`

java调用windows API

阅读更多
使用jinvoke调用windowsAPI。jna使用比较麻烦,需要写c代码和参数转换,jinvoke的使用就像jdk中的包一样。

官网使用参考:http://www.jinvoke.com/calling-the-win32-api-from-java

一个弹出框的例子(这种代码用于调用任何dll,不只是windows的,也可以是自己写的dll)

import com.jinvoke.JInvoke;
import com.jinvoke.NativeImport;

public class HelloWindows
{
@NativeImport(library="User32")
public static native int MessageBox(int hwnd,
           String text,
           String caption,
           int type); //windows Api MessageBox函数原型


public static void main(String[]argc)
{
   JInvoke.initialize();
   MessageBox(0,"Thisi MessageBox is a native Win32 MessageBox",
      "Hellow World",0);
}
}

运行效果:

*
使用以上代码方式可以任意调用本地的DLL文件。
注意:1.import com.jinvoke.JInvoke;import com.jinvoke.NativeImport;//引用包
   2.@NativeImport(library="User32")//指定本地的DLL文件
   3.public static native int MessageBox(int hwnd,String text,String caption,int type); //windows Api MessageBox函数原型 声明一个可以在java当前类中使用的方法
   4.JInvoke.initialize();//实例化JInvoke
   5.MessageBox(0,"Thisi MessageBox is a native Win32 MessageBox","Hellow World",0);//然后就可以开始调用DLL中的函数了


*
如果只是为了使用User32.dll中的函数可以直接使用jinvoke.jar中提供的User32类,而不必使用@NativeImport(library="User32")去包含一个DLL,再去声明一个做函数的类型转换的方法。

*

编译是需要带上jinvoke.jar即:java -classpath .;jinvoke.jar HelloWindows
分享到:
评论

相关推荐

    java 调用windows API

    Java调用Windows API是将Java程序与Windows操作系统底层功能相结合的一种技术。这使得Java开发者能够利用Java的跨平台优势,同时访问到特定于Windows系统的功能。以下是对这一主题的详细阐述: 1. **jinvoke.jar**...

    java调用windows api

    Java调用Windows API是将Java程序与Windows操作系统底层功能相结合的一种技术。这允许Java开发者利用Java的跨平台特性,同时可以访问到特定于Windows系统的功能,例如注册表操作、文件系统监控、用户权限管理等。要...

    java 使用windows api操作 office等的源码

    Java 使用Windows API操作Office是一种常见的技术实践,尤其是在自动化办公任务、数据处理或集成办公软件功能时。这个源码包“jawin-2.0-alpha1-src”可能包含了实现这一目标的类库和示例代码。下面我们将深入探讨...

    如何在JAVA中调用windows_API.doc

    在Java中调用Windows API是通过Java本地接口(JNI,Java Native Interface)来实现的,这允许Java代码直接与操作系统...在必要时,应优先考虑使用纯Java解决方案,或者寻找已有的Java库来替代对Windows API的直接调用。

    java使用win32api创建gui窗体

    "java使用win32api创建gui窗体"这个主题就涉及到如何在Java程序中集成Win32 API来创建具有特殊需求的用户界面。 Win32 API是微软Windows操作系统提供的底层接口,它允许开发者直接与操作系统交互,执行许多低级别的...

    如何在JAVA中调用windowsAPI.doc

    在Java中调用Windows API是通过Java本地接口(JNI,Java Native Interface)来实现的,这允许Java代码直接与操作系统底层交互,扩展Java的功能。以下是一个详细的步骤介绍: 1. **编写Java代码**: 首先,你需要在...

    Java调用Win32获取窗口句柄JNative-1.3.2

    总结来说,Java调用Win32获取窗口句柄JNative-1.3.2是一种使用JNI技术来实现Java与Win32 API交互的方法。通过JNative库,开发者可以轻松地在Java应用程序中查找并操作特定的Windows窗口,增强了Java应用程序的功能和...

    Java通过JNA调用系统API

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

    JAWIN(Java调用Win API)

    Java调用Win API,通常指的是在Java程序中利用Windows操作系统提供的功能接口,这些接口通常以动态链接库(DLL)的形式存在。为了实现这样的调用,开发者通常会使用JNI(Java Native Interface),这是一个允许Java...

    Java高手调用windows本地API、或者是c、c++等语言写的动态链接库源代码

    总的来说,Java调用Windows本地API或C/C++动态链接库是通过JNI或JNA来实现的。虽然这两种方法各有优缺点,但在实际应用中,JNA通常因为其易用性和无需编写本地代码的特点而更受欢迎。通过掌握这些技术,Java开发者...

    java调用windows命令

    以下是如何使用Java调用Windows命令行的详细步骤和注意事项: 1. **调用外部程序** - 使用`Runtime.getRuntime().exec()`方法创建一个子进程来执行指定的可执行程序。例如: ```java Process process = Runtime....

    jinvoke调用Windows API

    包里有jinvoke所需的JAR包和jinvoke源码,和自己下载的一些学习jinvoke的文档和例子,在这里总结在一块,方便大家的学习!

    jna platform,Windows api

    在Java调用Windows API时,JNA会自动处理数据类型的转换,如将Java的`int`映射到C的`int`,将Java的`String`映射到C的`char*`等。同时,JNA还支持自定义映射规则,以适应复杂的类型需求。 在压缩包中的`jnaTest`...

    java管理windows系统内存_java释放内存缓存_java获得CPU使用率_系统内存_硬盘_进程源代码

    在Java中,我们可以使用Java Native Interface(JNI)来调用Windows API,获得系统的内存信息和CPU使用率。我们可以使用GetSystemInfo函数来获得系统的内存信息,包括物理内存的大小、可用内存的大小和页面文件的...

    Windows API和Script

    了解和熟练使用Windows API对于进行系统级编程,尤其是驱动开发至关重要。 Script,通常指的是脚本语言,它是一种轻量级的编程语言,用于控制软件的行为,如HTML页面中的JavaScript或批处理文件中的Cmd/Batch脚本。...

    windows 下java调用winrar压缩文件为rar 格式

    在Windows环境下,使用Java进行程序开发时,有时我们需要对文件进行压缩操作,比如将文件压缩成RAR格式。这个过程涉及到Java的本地方法调用、文件I/O操作以及第三方库的集成。下面我们将详细探讨如何在Java中实现这...

    Java-Bluetooth-API.rar_bluetooth-API_java bluetooth_java 蓝牙api_j

    使用Java蓝牙API进行蓝牙调用的步骤通常包括: 1. 初始化**LocalDevice**,获取当前设备的信息。 2. 设置设备的可见性,以便其他设备可以发现。 3. 创建**DiscoveryAgent**实例,启动设备搜索,找到目标远程设备。 ...

    java调用window操作系统文本转语音并生成播放文件

    总之,Java调用Windows操作系统实现文本转语音并生成播放文件,涉及到JNI、COM组件、DLL编程、音频处理等多个方面,需要对Java和Windows API有深入理解。通过适当的技术选择和优化,可以创建出高效、灵活的文本转...

    Java Windows API-开源

    对于Java Windows API,它可能详细解释了如何配置和使用API,包括安装步骤、示例代码以及可能遇到的问题和解决方案。 4. **javadoc**:这通常是指Java文档,是API的详细说明,由Java源代码中的注释生成。开发者可以...

Global site tag (gtag.js) - Google Analytics