gpt4 book ai didi

java - JNA 的 Void* 示例

转载 作者:行者123 更新时间:2023-11-29 06:20:48 25 4
gpt4 key购买 nike

我一直在努力寻找关于 JNA 中 void* 示例的示例。我想了解如何在 JNA 中使用指针。

例如

在 C 中:

int PTOsetApiOpt(int iOpt,void* lpValue,int iLen)

Parameters: iOpt: int
lpData: address from which data should be read.
iLen: length of data
returns int values : 0 as success or -1 as failure.

我们如何使用 JNA 在 JAVA 中编写它?我已经在 J​​AVA 中尝试过这个

public MyTest{

public interface MyLibrary extends Library {
public int PTOsetApiOpt(int iOpt,Pointer lpValue,int iLen);

}
public static void main(String[] args) {
MyLibrary myLib = (MyLibrary)MyLibrary.INSTANCE;
int result = myLib.PTOsetApiOpt(1,new Pointer(0),1024);
}

我在调用 myLib.PTOsetApiOpt 时遇到 JVM 崩溃。我猜这是因为新的 Pointer 语句。如何在 JVM 不崩溃的情况下创建一个指针并将其用作参数?我已经坚持了2天。任何提示都会很棒。提前致谢。

问候,-视频-

最佳答案

声明您的方法以 IntByReference 作为参数,那么在调用该方法时就不必调用 ByReference.getPoint()。

关于java - JNA 的 Void* 示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3117191/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com