CEN XFS如何找到WFPOpen



我将为我自己的硬件(可能是虚拟的(实现一个SPI。正如我发现的(也许是我弄错了(当应用程序调用 WFSOpen 时,XFS 在 SPI 中调用 WFPOpen。但是这个"在 SPI 中"意味着什么?也许我应该给出在注册表中某处找到 WFPOpen 的 dll 文件的地址。我也认为dll路径应该在HKLM\XFS\Service_Provider\\DllName中给出。是这样吗,够了吗?XFS 是否对此注册表路径和项敏感,并使用它来查找 SPI 的位置?我已经完成了上面,但我得到了WFS_ERR_SERVICE_NOT_FOUND。似乎 XFS 不会在 dll 中查找该函数。可能出了什么问题?

我认为最好发送 xfs 日志,以便能够更好地处理问题。https://www.dropbox.com/s/6wwbjfpxxibjnl1/9603071652%20-%20XFSTrace.7z?dl=0

从应用程序执行 WFSOpen 时,需要设置要打开的逻辑服务名称。XFS 管理器将尝试在 Windows 注册表中查找此名称,位于:

HKEY_USERS/。默认(或启动 SESION 的用户(/XFS/LOGICAL_SERVICES/。

对于每个逻辑服务名称,都有一个带有"提供程序"变量的注册表项。

使用此"提供程序"变量的值,XFS 管理器将转到:

HKEY_LOCAL_MACHINE/软件/XFS/value_for_this_provider/.

在此文件夹中,变量"dllname"将要为此 SPI 加载的 dll 绑定在一起。

祝你好运!

相关内容

  • 没有找到相关文章

最新更新