当前位置: 首页 > 面试题库 >

是否有Java库可以访问本机Windows API?

喻元龙
2023-03-14
问题内容

是否有Java库可以访问本机Windows API?使用COM或JNI。


问题答案:

您可以尝试这两个,我都看到了成功。

http://jawinproject.sourceforge.net

Java /
Win32集成项目(Jawin)是一个免费的开放源代码体系结构,用于Java和通过Microsoft的组件对象模型(COM)或Win32动态链接库(DLL)公开的组件之间的互操作。

https://github.com/twall/jna/

JNA为Java程序提供了对本机共享库(Windows上的DLL)的轻松访问,而无需编写Java代码即可完成任何操作-
无需JNI或本机代码。此功能与Windows的Platform / Invoke和Python的ctype相当。访问在运行时是动态的,无需代码生成。

JNA允许您使用自然Java方法调用直接调用本机函数。Java调用看起来就像在本机代码中一样。大多数呼叫不需要特殊处理或配置。不需要样板文件或生成的代码。

也可以在这里阅读:

http://en.wikipedia.org/wiki/Java_Native_Interface

Java本地接口(JNI)是一种编程框架,允许Java代码运行在Java虚拟机(JVM)打电话,被称为1书面其他本地应用程序(程序特定的硬件和操作系统平台)和库语言,例如C,C
++和汇编语言

http://en.wikipedia.org/wiki/Java_Native_Access

Java Native Access使Java程序无需使用Java Native
Interface即可轻松访问本机共享库。JNA的设计旨在以最少的努力以自然的方式提供本地访问。不需要样板或生成的胶水代码。



 类似资料:
  • 问题内容: 是否有一个(独立的!)Java API,它将XML- RPC接口包装到bugzilla?我不想为此编写自己的api,而且我实际上找不到能够做到这一点(而且只能做到这一点)的库。 更新: 我正在寻找 只用Java编写的类似http://oss.dbc.dk/bugzproxy/的东西 问题答案: 我知道这是一个有点老的话题,但是有相同问题的人很可能会在这里落下来。我想分享一篇博客文章,我

  • 问题内容: 我有一组HTML文件和一个SQLite数据库,我想使用file://方案从浏览器访问这些数据库。是否可以使用JavaScript访问数据库并创建查询(和表)? 问题答案: 不好的是,浏览器对它的支持非常有限。 这里更多信息HTML5索引,网络SQL数据库和浏览器大战 PS:正如@Christoph所说,WebSQL不再处于主动维护状态,并且Web应用程序工作组不打算进一步维护它,因此。

  • 我试图使用JNA调用这个本机Windows方法: 但是我真的很难理解我应该用什么作为Java方面的参数。使用JNA,您应该创建与本机C结构匹配的Java类,我已经成功地使用了WinAPI的其他部分。 据我所知,LPDIRECTSOUND是一个“指向DirectSound结构的长指针”的typedef,LPUNKNOWN是一个“指向未知的长指针”的typedef? 我在dsound.h中找到了本机结

  • 问题内容: 有没有一种方法可以完全使用客户端Javascript访问MySql数据库,或者是否需要使用PHP或C#这样的服务器端语言? 谢谢 问题答案: 如果Javascript在浏览器中运行,则无法访问MySQL数据库。首先,这是一个技术限制,因为Javascript无法通信任意协议(不,WebSockets不是解决方案)。请注意,作为服务器端和所有端的Node.js是一种“不同类型的javas

  • 问题内容: Java中是否可以通过反射访问私有字段str?例如获取该字段的值。 问题答案: 是。 然后,使用字段对象获取类实例上的值。 请注意,方法通常会使人们感到困惑。你有该字段,但没有该对象的实例。你必须将其传递给方法

  • 假设我有一个这样的Kotlin函数类型的Kotlin 1.1 我可以从Java访问它 是否有可能以某种方式从Java以科特林类型别名(即)访问科特林接口?