jna调取第三方dll实战(罗技G29)

如果你是一个java程序员,并且需要调用第三方的dll,那么jna无疑是最好的方式
最近开发遇到一个问题,如何在浏览器上获取罗技G29方向盘的数据,简单的来说是浏览器如何识别到你插入的设备。

一、首先:你得去罗技官网下载驱动:

下载Logitech game soft和Logitech GHUB
这里要说一下,在SDK文档里提出了方向盘得在罗技游戏软件运行的情况下才能进行相关的SDK开发,所以这个软件在开发中需要全程运行
下载链接:https://support.logi.com/hc/zh-cn/articles/360025298053
在这里插入图片描述
如果是显示未连接的话建议重新启动电脑,网上说是这个软件会自动装驱动,与Windows有冲突,具体咱也不知道

二、下载官网的SDK

去罗技官网上下载罗技方向盘SDK
https://www.logitechg.com.cn/zh-cn/innovation/developer-lab.html
文件中有相关的.h和.lib文件,以及相关的说明文档
在这里插入图片描述
头文件用到的函数:
在这里插入图片描述

三、Java使用jna来获取罗技G29方向盘的数据

//首先,将LogitechSteeringWheelEnginesWrapper.dll文件resource文件夹下,
//当然最后部署的时候,最好还是使用绝对路径比较好
WhellIn whellin = (WhellIn)Native.load("LogitechSteeringWheelEnginesWrapper",WhellIn.class);
        boolean LogiSteeringInitialize(boolean ignoreXInputControllers);
        boolean LogiUpdate();
        boolean LogiIsConnected(int index);
        DIJOYSTATE2 LogiGetState(int index);
        DIJOYSTATE2ENGINES LogiGetStateENGINES(int index);

官方文档说必须有一个窗口才可以接受到数据,否则你获取到的为null,所以必须要在获取数据前打开一个空白的窗口,小车才可以继续接受数据。
在这里插入图片描述

相信各位大佬到这里已经有思路了。具体的文档和参考资料以及现成的代码可以去找我的资源那里下载。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值