前一段时间在blog里面写了一片日志
http://hi.baidu.com/passedbylove/blog/item/18b3d12ce67162e58b13997e.html
java调用windows api的可能性探讨
今天在这里写一个现成的java调用Windows 32api的例子给大家看看了。
抢在没有多少人了解或使用者技术的时候写出来。 ~~
首先从http://www.jinvoke.com/calling-the-win32-api-from-java将 jinvoke下载回来
将jinvoke.jar解压到 磁盘任意目录
配置环境变量
Windows键+ PuaseBreak打开 “系统属性”
切换到“高级”选项卡
点“环境变量”
如果当前用户中没有 classpath环境变量 请新建之
我这里java安装路径是
C:\Program Files\Java\jdk1.5.0_09
我应该设置的的classpath值是
.;C:\Program Files\Java\jdk1.5.0_09\lib\tools.jar;C:\Program Files\Java\jdk1.5.0_09\lib\dt.jar
其中 .;代表当前目录
其次查看 系统全局变量“系统变量”
找到path
在path头处添加 .;
尾部添加;C:\Program Files\Java\jdk1.5.0_09\bin;
配置好后一路“确定”后编写java文件
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);
}
}
将jinvoke.jar放到HelloWindows.java同级目录
统计目录编写批处理文件compile.bat
@echo off
color 0f
javac -classpath %~dp1jinvoke.jar; %1
if %errorlevel%==0 (
echo 编译成功
cd %~dp1
java -classpath %~dp1jinvoke.jar; %~n1>nul 2>nul
)
pause
把HelloWindows.java往complie.bat 拖动
如果你的java软件包没问题就会出现这个画面
至于windows api能做什么,我就不说了。
csdn下载地址:
分享到:
相关推荐
Java调用Windows API是将Java程序与Windows操作系统底层功能相结合的一种技术。这使得Java开发者能够利用Java的跨平台优势,同时访问到特定于Windows系统的功能。以下是对这一主题的详细阐述: 1. **jinvoke.jar**...
Java调用Windows API是将Java程序与Windows操作...以上是关于Java调用Windows API的基本概念、实现方式以及需要注意的事项。通过这些技术,开发者可以充分利用Java的灵活性和Windows的功能,创建出更强大的应用程序。
例如,如果你在Windows上,可能需要包含`windows.h`头文件并使用API函数。完成C代码后,保存为`.c`文件。 5. **创建动态链接库(DLL)**: 使用Visual C++或其他C/C++编译器,创建一个Win32 Dynamic-Link Library...
9. **跨平台性问题**:虽然Java本身具有跨平台特性,但使用Windows API意味着代码将受限于Windows环境,不能在非Windows系统上运行。 10. **最佳实践**:在实际开发中,应遵循最佳实践,如避免长时间运行的Office...
在Java中调用Windows API是通过Java本地接口(JNI,Java Native Interface)来实现的,这允许Java代码直接与操作系统底层交互,扩展Java的功能。以下是一个详细的步骤介绍: 1. **编写Java代码**: 首先,你需要在...
Java调用Kettle API实现数据抽取DEMO是一个典型的ETL(提取、转换、加载)过程,其中Kettle(又称Pentaho Data Integration或KDI)是一个强大的数据集成工具,允许开发者通过图形化界面或者编程方式处理数据迁移和...
调用系统API可能会涉及安全问题,尤其是当修改系统时间或访问敏感资源时。确保你的应用有相应的权限,并且正确处理可能的异常。另外,虽然JNA提供了便利,但相比于JNI,它的性能可能会稍弱一些,对于性能要求极高的...
然而,有时候程序员可能需要访问更底层的操作系统功能,比如Windows API,来实现特定的功能。"java使用win32api创建gui窗体"这个主题就涉及到如何在Java程序中集成Win32 API来创建具有特殊需求的用户界面。 Win32 ...
总的来说,Java调用Windows本地API或C/C++动态链接库是通过JNI或JNA来实现的。虽然这两种方法各有优缺点,但在实际应用中,JNA通常因为其易用性和无需编写本地代码的特点而更受欢迎。通过掌握这些技术,Java开发者...
Java调用Win API,通常指的是在Java程序中利用Windows操作系统提供的功能接口,这些接口通常以动态链接库(DLL)的形式存在。为了实现这样的调用,开发者通常会使用JNI(Java Native Interface),这是一个允许Java...
360 API可能需要发送GET或POST请求,带上必要的参数,如API Key、Secret以及手机号码列表。 3. **处理请求参数**:将手机号码归属地查询的请求参数,如手机号码,封装到请求体或者URL中。如果使用POST请求,数据...
在Java编程语言中,调用高德公交API可以实现丰富的公共交通功能,如线路查询、最优换乘策略计算、两点之间的距离测量(包括步行距离)。以下将详细介绍如何利用Java实现这些功能,以及高德公交API的基本原理和使用...
总结来说,Java调用Win32获取窗口句柄JNative-1.3.2是一种使用JNI技术来实现Java与Win32 API交互的方法。通过JNative库,开发者可以轻松地在Java应用程序中查找并操作特定的Windows窗口,增强了Java应用程序的功能和...
Java调用RESTful API通常通过发送HTTP GET、POST、PUT、DELETE等方法实现。例如,使用HttpURLConnection,你可以构建URL、设置请求方法、添加请求头和请求体,然后接收响应。对于复杂的JSON数据操作,可以使用Gson或...
以下是如何使用Java调用Windows命令行的详细步骤和注意事项: 1. **调用外部程序** - 使用`Runtime.getRuntime().exec()`方法创建一个子进程来执行指定的可执行程序。例如: ```java Process process = Runtime....
总结起来,Java调用Chrome内核CEF实现非JxBrowser的方式需要开发者具备一定的C++和JNI知识,以及对CEF框架的理解。这个过程虽然相对复杂,但可以避免商业库的费用,同时获得与Chrome相同的Web渲染能力。在实际开发中...
在这个项目中,我们将深入探讨如何进行API的二次开发,以实现在Java应用程序中实时查询天气的功能。 首先,我们需要了解高德地图开放平台(AMAP Open Platform),它为开发者提供了包括定位、地图展示、路径规划、...
本文将深入探讨如何使用Java调用斑马打印机的官方API(ZSDK_API.jar),以及在实际开发中需要注意的关键点。 首先,斑马打印机的ZSDK_API.jar是官方提供的Java库,它封装了与打印机通信的底层协议,包括设置打印...
Java调用Cloudera Manager API是一个复杂而关键的任务,它涉及到使用Java编程语言与Cloudera Manager服务器进行交互,以实现自动化管理和监控大数据集群。Cloudera Manager是管理Hadoop和其他Cloudera支持的数据处理...
`java-gitlab-api-master.zip`这个压缩包包含了一个Java库,用于实现对GitLab API的调用。在深入探讨之前,让我们先了解一下GitLab API的基本概念。 GitLab API 是一个RESTful API,它提供了丰富的功能,包括但不...