jna相关内容
我正在寻找使外部应用程序(不是像notepad或calc.exe这样的Windows应用程序)的解决方案,以便在按下Java GUI中的按钮后始终保持在顶部。 我在C ++中使用这段代码来获取桌面上所有打开的窗口,并将它们的进程ID(PID)与发送的PID(来自我的Java应用程序)相匹配: #include“cjni.h” #include #include
..
所以我目前有一个透明的JFrame,你可以点击,但我需要它保持在所有其他窗口之上。 假设你有一个浏览器打开,我希望JFrame能够保持最佳状态,但能够捕捉击键和鼠标点击。 这是我当前的代码。 公共类TransparentWindow扩展了JFrame { 私有静态URL URI; public TransparentWindow(){ initComponents(
..
你有没有听说过带有Java包装的Windows虚拟操纵杆? 我正在尝试PPJOY,它运行良好,但后来我需要使用JNI从Java开始工作,暂时看起来并不容易。 谢谢! 解决方案 你有。我为PPJoy制作了一个Java包装器。它真的很容易使用。请参阅: 尝试{ / * *尝试创建新的操纵杆。 * / 操纵杆操纵杆=新操纵杆(); 尝试{ / * *设置
..
我在Java窗口上使用Windows Vista / 7的DWM功能时遇到问题。我想让我的画面背景使用Aero风格。执行此操作的Windows API由 dwmapi 库中的函数 DwmExtendFrameIntoClientArea 提供。我已经设法通过JNA正确调用该程序,它完成了它应该做的事情(你可以看到,例如在调整框架大小时,在下一次重绘之前,你会看到尚未绘制的区域中的适当的空气动力效果
..
我有一个代码片段,可以使用 JNA ,它对我来说很好。 我需要做什么改变才能使用Mac Os上的代码。 非常感谢帮助。 谢谢, Shihab。 解决方案 以下是没有JNA的方法。 public void setWallpaper (文件文件) 抛出异常{ String as [] = { “osascript”, “-e”,“tell application
..
我必须写一个DLL应该提供一个简单的服务: IN字符串或字节数组(相当于char *) IN整数表示in char *的大小 IN等效于库*用于写入数据的char *缓冲区 用于写入的可用char *缓冲区的大小 将有效写入的大小写入out char * buffer 使用C观点,签名应如下所示: void myService(char * inBuffer,//如字符
..
我想通过标题获取一个窗口然后激活它。问题是 FoundWindow 方法搜索所有标题。 我想通过其部分标题获得一个窗口。 import com.sun.jna.platform.win32 .User32; import com.sun.jna.platform.win32.WinDef.HWND; public class IsRunning { public stati
..
我可以编译这个JNA示例代码(来自 https://github.com/的第2步) twall / jna /#getting_started ): package com.sun.jna.examples; import com.sun.jna.Library; import com.sun.jna.Native; import com.sun.jna.Platform
..
我正在尝试使用JNA来查询Windows中文件的有效权限。最后,我计划使用 GetEffectiveRightsFromAcl函数,但要这样做,我需要提供一个指向填充的 TRUSTEE结构。 JNA平台(platform.jar)似乎没有定义这个结构,所以我试图自己定义它。以下是我到目前为止: 公共静态类TRUSTEE扩展结构{ public TRUSTEE(){ super(); }
..
我正在尝试编写一些通过JNA执行等待的代码(例如通过调用Kernel32函数WaitForSingleObject),但是如果调用Thread.interrupt(),我也希望等待完成;我假设Java使用类似Event对象的东西来实现中断;有没有办法从Java获取事件,以便在调用WaitForMultipleObjects时使用它?或者,如果线程被中断,我还有其他任何方式可以安排等待吗? 解
..
我已经开始构建一个java服务,它包含JNA以加载本机C / C ++库,我想在Raspberry PI aka arm平台上运行java服务。我已经成功建立了稳定的服务基础,它在Windows7和linux-amd64 / debian上运行,但是在RPI平台上我得到了上述错误: 线程“main”java.lang中的异常。 UnsatisfiedLinkError:在资源路径中找不到JNA本
..
我根本没有使用Windows API的经验,所以请原谅我的无知。 我想将文件删除到垃圾箱。如何使用 JNA 以及如何检测这是否可行,例如,因为文件是否位于网络共享上? 解决方案 使用 com.sun.jna.platform.win32.W32FileUtils ,已定义 moveToTrash 和 hasTrash 方法。
..
由于 Robot.createScreenCaputure()方法很慢,我决定使用本机库。我搜索并找到了这个论坛并找到了具体的 JNA Library 的https://stackoverflow.com/questions/2912007/java-how-to-take-a-screenshot-fast/4843247#4843247\">编码snipplet 。这是一个旧版本,所以我重写了
..
我正在尝试用Java编写一个与USB设备通信的简单应用程序。 USB设备由我使用Microchip微控制器制造。通信相当简单,因为USB设备来自HID类,所以在计算机和设备之间交换64字节的数组。 我的程序根据产品ID和供应商ID找到设备,可以写入和读取64个字节,但现在我想检测设备何时连接或断开与计算机的连接。 正如我在Microchip提供的C#程序中看到的那样,WndProc方法被覆
..
如何从Java操作内存?我知道Java在它自己的JVM中运行,所以它无法直接访问进程内存。 我听说JNA可用于获取操作系统之间的接口和我的Java代码。 假设我想操纵Solitaire的得分。尝试将是这样的: 获得纸牌的过程 获取访问权限记忆单人纸币 找出分数存储在内存中的位置 在地址中写下我的新值 Java本身无法访问该内存,因此如何使用JNA执行此操作? 解
..
我需要执行一项简单的任务:在资源管理器窗口中打印出列表视图项的名称。假设我在桌面上打开“C:\Documents and Settings”,那么我想要做的就是使用JNA编写一个java程序,打开打开的资源管理器窗口中所有文件夹/文件的名称。 我能做的事情:获取打开的资源管理器窗口的句柄和里面listview的句柄。 我发现:我需要调用User32.dll的SendMessage函数并
..
我在Windows下运行的程序计划制作可以在不同的密钥runnig上映射不同的“宏”。问题是 - 当应用程序没有被聚焦时,如何使Java听到按下的键。 我发现很多意见认为这是不可能的。但我也发现了Stefano在这里写的这个 。对我来说,这个解决方案不够好,至少没有一个重要的信息。函数 MsgWaitForMultipleObjects()如果未按下该键,则返回一个值...这没关系。按键后,
..
我正在编写Java 6应用程序,我必须检查文件是否可读。但是,在Windows上 canRead()始终返回 true 。所以我看到可能,唯一的解决方案可能是基于WINAPI并用JNA / JNI编写的一些原生解决方案。 但是,还有另一个问题,因为在WINAPI中很难找到一个简单的函数,它会返回有关文件访问的信息。我发现 GetNamedSecurityInfo 或 GetSecurityI
..
有没有人知道如何捕获Java中的屏幕截图(不是它自己的屏幕,而是桌面上的任何其他窗口,他们不必须是活动窗口)?这个类似的主题有很多线索,但我还没有找到答案。 我尝试过使用JNA,但经过几次尝试后卡住了。例如...... public class Main { public static void main(String [] args ){ Main m = new Main
..
希望重新回到发展空间;主要使用Java来调用一些原生的win32函数(我不想在.NET中构建).... 有人能指出我能去的地方吗?使用Java(JNI / JNA / SWIG)从不同的运行窗口中读取标题。假设您知道您尝试连接的应用程序在内存空间中的哪个位置。 解决方案 在JNA中: 公共接口User32扩展StdCallLibrary { User32 INSTANCE =
..