其他分享
首页 > 其他分享> > jna调取第三方dll实战(罗技G29)

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,所以必须要在获取数据前打开一个空白的窗口,小车才可以继续接受数据。
在这里插入图片描述

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

标签:罗技,dll,jna,boolean,文档,G29,下载,SDK
来源: https://blog.csdn.net/weixin_43170526/article/details/114632576