Java CEN/XFS-无效指针

Java CEN/XFS-无效指针,java,dll,jna,cen-xfs,Java,Dll,Jna,Cen Xfs,我用CEN-XFS实现了新的服务提供者,但它返回了错误(-26),等于“WFS\u ERR\u INVALID\u指针” 我使用java,更准确地说是JNA与DLL(msxfs.DLL)通信 我在[HKEY\U USERS.DEFAULT\XFS\LOGICAL\U SERVICES\MyCurrencyDispenser]上使用REGEDIT创建服务提供程序 价值观: 我的接口-WFSOpen(它是LibraryMethods的一部分) WFS启动后执行WFS hResult = libMe

我用CEN-XFS实现了新的服务提供者,但它返回了错误(-26),等于“WFS\u ERR\u INVALID\u指针”

我使用java,更准确地说是JNA与DLL(msxfs.DLL)通信

我在[HKEY\U USERS.DEFAULT\XFS\LOGICAL\U SERVICES\MyCurrencyDispenser]上使用REGEDIT创建服务提供程序 价值观:

我的接口-WFSOpen(它是LibraryMethods的一部分)

WFS启动后执行WFS

hResult = libMethods.WFSOpen("MyCurrencyDispenser", 0, "CDM", 0x0000001F, 0,
dwVersionsRequired, lpWFSVersionOld, lpWFSVersion, null);
WFSOpen本机:

HRESULT extern WINAPI WFSOpen(LPSTR lpszLogicalName, HAPP hApp, LPSTR 
lpszAppID, DWORD dwTraceLevel, DWORD dwTimeOut, DWORD 
dwSrvcVersionsRequired, LPWFSVERSION lpSrvcVersion, LPWFSVERSION 
lpSPIVersion, LPHSERVICE lphService);

我需要帮助,谢谢…

下面的错误告诉您,您的
指针指向错误的内存,而
WFSOPEN()
函数需要它

"WFS_ERR_INVALID_POINTER"
您的
struct
HAPP
参数之一需要正确指向

notice: HAPP is void* not integer type.

WFSOpen
是本地
WFSOpen
方法的JNA“包装器”。是吗?是的,伙计,你好像写了无效的包装纸。你能在问题中添加本机方法的签名吗?好的,我编辑了……实际上,这些方法是C/C++语言,但我使用JNA与DLL通信,所以类型原语等于“HSERVICE HSERVICE”别无选择,我必须创建字符串HSERVICE,你明白吗?LPWFSVERSION lpsrvcvversion-是指向结构的指针,LPWFSVERSION lpSPIVersion是指向结构的指针,LPHSERVICE LPHSERVICE是指向DWORD大小的HSERVICE的指针。您可以尝试使用JNAAPI指针来获取此值。此值不能转换为字符串。
notice: HAPP is void* not integer type.