我使用JNA 4.2.1从Java访问Windows注册表(不幸的是,这是获取配对蓝牙设备列表的唯一方法)。它工作正常,直到Windows 10安装了一些更新,现在我有以下问题:
com.sun.jna.platform.win32.Win32Exception:系统找不到 文件指定。在 com.sun.jna.platform.win32.Advapi32Util.registryGetValues(Advapi32Util.java:1649) 在IntelleWave.Devices.Device.getCOMportByBTUID(Device.java:243)at IntelleWave.Devices.Device.getBTDeviceInstances(Device.java:163)at IntelleWave.Devices.Device.getDeviceInstances(Device.java:112)at IntelleWave.Devices.Device。(Device.java:72)at IntelleWave.Devices.DeviceEnumerator.InitDevices(DeviceEnumerator.java:101) 在 IntelleWave.SettingsScreenController.UpdateDeviceList(SettingsScreenController.java:662) 在 IntelleWave.SettingsScreenController.initialize(SettingsScreenController.java:153) 在javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2548)at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2441)at at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2409)at at IntelleWave.ScreensController.loadScreen(ScreensController.java:46) 在IntelleWave.IntelleWave.init(IntelleWave.java:175)at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:841) 在 com.sun.javafx.application.LauncherImpl.lambda $ $ launchApplication 155(LauncherImpl.java:182)
在java.lang.Thread.run(Thread.java:745)
对我而言,看起来很奇怪,我看到Win32 Exception,但事实上我有一个Windows 64.也许问题与这个差异有关,我必须告诉JNI使用x64库(Advapi32Util)?
你可以请一下建议。