jna相关内容

无法在Java / C ++中为外部应用程序设置always-on-top

我正在寻找使外部应用程序(不是像notepad或calc.exe这样的Windows应用程序)的解决方案,以便在按下Java GUI中的按钮后始终保持在顶部。 我在C ++中使用这段代码来获取桌面上所有打开的窗口,并将它们的进程ID(PID)与发送的PID(来自我的Java应用程序)相匹配: #include“cjni.h” #include #include ..
发布时间:2018-12-28 15:53:24 Java开发

透明,点击,始终在顶部JFrame

所以我目前有一个透明的JFrame,你可以点击,但我需要它保持在所有其他窗口之上。 假设你有一个浏览器打开,我希望JFrame能够保持最佳状态,但能够捕捉击键和鼠标点击。 这是我当前的代码。 公共类TransparentWindow扩展了JFrame { 私有静态URL URI; public TransparentWindow(){ initComponents( ..
发布时间:2018-12-28 15:53:00 Java开发

Java中的虚拟操纵杆

你有没有听说过带有Java包装的Windows虚拟操纵杆? 我正在尝试PPJOY,它运行良好,但后来我需要使用JNI从Java开始工作,暂时看起来并不容易。 谢谢! 解决方案 你有。我为PPJoy制作了一个Java包装器。它真的很容易使用。请参阅: 尝试{ / * *尝试创建新的操纵杆。 * / 操纵杆操纵杆=新操纵杆(); 尝试{ / * *设置 ..
发布时间:2018-12-28 14:34:27 Java开发

禁用JFrame中的背景绘图以正确显示Aero(DWM)效果

我在Java窗口上使用Windows Vista / 7的DWM功能时遇到问题。我想让我的画面背景使用Aero风格。执行此操作的Windows API由 dwmapi 库中的函数 DwmExtendFrameIntoClientArea 提供。我已经设法通过JNA正确调用该程序,它完成了它应该做的事情(你可以看到,例如在调整框架大小时,在下一次重绘之前,你会看到尚未绘制的区域中的适当的空气动力效果 ..
发布时间:2018-12-26 13:47:50 Java开发

使用Java本机访问更改MAC系统的桌面背景

我有一个代码片段,可以使用 JNA ,它对我来说很好。 我需要做什么改变才能使用Mac Os上的代码。 非常感谢帮助。 谢谢, Shihab。 解决方案 以下是没有JNA的方法。 public void setWallpaper (文件文件) 抛出异常{ String as [] = { “osascript”, “-e”,“tell application ..
发布时间:2018-12-22 19:14:25 Java开发

使用JNA和Ada的Interface.C包将Ada动态库与Java接口

我必须写一个DLL应该提供一个简单的服务: IN字符串或字节数组(相当于char *) IN整数表示in char *的大小 IN等效于库*用于写入数据的char *缓冲区 用于写入的可用char *缓冲区的大小 将有效写入的大小写入out char * buffer 使用C观点,签名应如下所示: void myService(char * inBuffer,//如字符 ..
发布时间:2018-12-22 19:04:45 Java开发

java JNA - 查找部分窗口标题

我想通过标题获取一个窗口然后激活它。问题是 FoundWindow 方法搜索所有标题。 我想通过其部分标题获得一个窗口。 import com.sun.jna.platform.win32 .User32; import com.sun.jna.platform.win32.WinDef.HWND; public class IsRunning { public stati ..
发布时间:2018-12-22 18:44:54 Java开发

将字符串转换为JNA的指针

我正在尝试使用JNA来查询Windows中文件的有效权限。最后,我计划使用 GetEffectiveRightsFromAcl函数,但要这样做,我需要提供一个指向填充的 TRUSTEE结构。 JNA平台(platform.jar)似乎没有定义这个结构,所以我试图自己定义它。以下是我到目前为止: 公共静态类TRUSTEE扩展结构{ public TRUSTEE(){ super(); } ..
发布时间:2018-12-20 23:03:11 Java开发

使用JNA本机等待调用检测线程中断(Windows)

我正在尝试编写一些通过JNA执行等待的代码(例如通过调用Kernel32函数WaitForSingleObject),但是如果调用Thread.interrupt(),我也希望等待完成;我假设Java使用类似Event对象的东西来实现中断;有没有办法从Java获取事件,以便在调用WaitForMultipleObjects时使用它?或者,如果线程被中断,我还有其他任何方式可以安排等待吗? 解 ..
发布时间:2018-12-20 00:55:08 Java开发

资源路径中找不到JNA本机支持(/com/sun/jna/linux-arm/libjnidispatch.so)

我已经开始构建一个java服务,它包含JNA以加载本机C / C ++库,我想在Raspberry PI aka arm平台上运行java服务。我已经成功建立了稳定的服务基础,它在Windows7和linux-amd64 / debian上运行,但是在RPI平台上我得到了上述错误: 线程“main”java.lang中的异常。 UnsatisfiedLinkError:在资源路径中找不到JNA本 ..
发布时间:2018-12-17 11:37:43 Java开发

Windows上的Java:如何删除文件到垃圾箱(使用JNA)

我根本没有使用Windows API的经验,所以请原谅我的无知。 我想将文件删除到垃圾箱。如何使用 JNA 以及如何检测这是否可行,例如,因为文件是否位于网络共享上? 解决方案 使用 com.sun.jna.platform.win32.W32FileUtils ,已定义 moveToTrash 和 hasTrash 方法。 ..
发布时间:2018-12-12 19:21:34 Java开发

JNA库比机器人类的屏幕截图慢?

由于 Robot.createScreenCaputure()方法很慢,我决定使用本机库。我搜索并找到了这个论坛并找到了具体的 JNA Library 的https://stackoverflow.com/questions/2912007/java-how-to-take-a-screenshot-fast/4843247#4843247\">编码snipplet 。这是一个旧版本,所以我重写了 ..
发布时间:2018-12-12 18:37:29 Java开发

JAVA JNA WindowProc实现

我正在尝试用Java编写一个与USB设备通信的简单应用程序。 USB设备由我使用Microchip微控制器制造。通信相当简单,因为USB设备来自HID类,所以在计算机和设备之间交换64字节的数组。 我的程序根据产品ID和供应商ID找到设备,可以写入和读取64个字节,但现在我想检测设备何时连接或断开与计算机的连接。 正如我在Microchip提供的C#程序中看到的那样,WndProc方法被覆 ..
发布时间:2018-12-10 21:08:40 Java开发

如何在Windows上使用JNA从Java操作内存

如何从Java操作内存?我知道Java在它自己的JVM中运行,所以它无法直接访问进程内存。 我听说JNA可用于获取操作系统之间的接口和我的Java代码。 假设我想操纵Solitaire的得分。尝试将是这样的: 获得纸牌的过程 获取访问权限记忆单人纸币 找出分数存储在内存中的位置 在地址中写下我的新值 Java本身无法访问该内存,因此如何使用JNA执行此操作? 解 ..
发布时间:2018-12-10 11:53:15 Java开发

JNA:将指针传递给User32.dll的SendMessage函数作为LPARAM

我需要执行一项简单的任务:在资源管理器窗口中打印出列表视图项的名称。假设我在桌面上打开“C:\Documents and Settings”,那么我想要做的就是使用JNA编写一个java程序,打开打开的资源管理器窗口中所有文件夹/文件的名称。 我能做的事情:获取打开的资源管理器窗口的句柄和里面listview的句柄。 我发现:我需要调用User32.dll的SendMessage函数并 ..
发布时间:2018-12-10 11:02:17 Java开发

"全局" KeyListener使用JNA

我在Windows下运行的程序计划制作可以在不同的密钥runnig上映射不同的“宏”。问题是 - 当应用程序没有被聚焦时,如何使Java听到按下的键。 我发现很多意见认为这是不可能的。但我也发现了Stefano在这里写的这个 。对我来说,这个解决方案不够好,至少没有一个重要的信息。函数 MsgWaitForMultipleObjects()如果未按下该键,则返回一个值...这没关系。按键后, ..
发布时间:2018-12-10 10:47:50 Java开发

如何检查文件是否可读?

我正在编写Java 6应用程序,我必须检查文件是否可读。但是,在Windows上 canRead()始终返回 true 。所以我看到可能,唯一的解决方案可能是基于WINAPI并用JNA / JNI编写的一些原生解决方案。 但是,还有另一个问题,因为在WINAPI中很难找到一个简单的函数,它会返回有关文件访问的信息。我发现 GetNamedSecurityInfo 或 GetSecurityI ..
发布时间:2018-12-07 12:07:33 Java开发

Java - 窗口图像

有没有人知道如何捕获Java中的屏幕截图(不是它自己的屏幕,而是桌面上的任何其他窗口,他们不必须是活动窗口)?这个类似的主题有很多线索,但我还没有找到答案。 我尝试过使用JNA,但经过几次尝试后卡住了。例如...... public class Main { public static void main(String [] args ){ Main m = new Main ..
发布时间:2018-12-06 14:15:40 Java开发

如何用JNI或JNA阅读窗口标题?

希望重新回到发展空间;主要使用Java来调用一些原生的win32函数(我不想在.NET中构建).... 有人能指出我能去的地方吗?使用Java(JNI / JNA / SWIG)从不同的运行窗口中读取标题。假设您知道您尝试连接的应用程序在内存空间中的哪个位置。 解决方案 在JNA中: 公共接口User32扩展StdCallLibrary { User32 INSTANCE = ..
发布时间:2018-12-05 20:05:54 Java开发