如何使用非标准名称实现功能

时间:2020-07-03 15:34:22

标签: java jna

我有一个DLL(带有源代码)LibUVCCam.dll,我想使用Java JNA来实现。我已经按照msvcrt教程进行操作,并且可以正常工作。

使用依赖关系遍历,转储函数的名称,并获得诸如?listDevices @ UVCCameraLibrary @@ SAXPEAPEADAEAH @ Z之类的东西,并且我想实现listDevices()。如何在以下位置定义

public interface JNALoader extends Library
{
  JNALoader INSTANCE = (JNALoader) Native.loadLibrary(("LibUVCCam"), JNALoader.class);
  ???? listDevices() // ???? = I don't know what to do here.
}

这是库源代码中的函数:

/*
* static function
* List connected devices
* @cameraNames : (out) name list of connected cameras
* @nDevices : (out) the number of connected cameras
*/
void UVCCameraLibrary::listDevices(char **cameraNames , int &nDevices)
{
...
}

该项目的完整资源为https://github.com/sky19938470/uvcamera-windows-project/tree/master/LibUVCCam

0 个答案:

没有答案
相关问题