Java 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启动后执行WFSJava 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
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.