【发布时间】:2020-09-04 12:35:31
【问题描述】:
dll中的函数是:
int getInfo (
unsigned int Index,
unsigned int* Mask,
unsigned int* Serial,
unsigned __int64* licInfo);
licInfo 是一个包含 4 个元素的数组,这一点很重要。
在 Java 中,方法是这样声明的:
int getInfo(int Index, IntByReference Mask, IntByReference Serial, Memory licInfo);
方法调用:
int Index = 0;
IntByReference Mask = null;
IntByReference Serial = null;
Memory LicInfo = new Memory(256);
int status = dll.INSTANCE.getInfo(Index, Mask, Serial, licInfo);
dll 返回一个错误代码,说明参数错误。我很确定错误是最后一个参数。我也尝试过直接传递一个长数组或传递一个指针但没有成功。
【问题讨论】: