gpt4 book ai didi

xfs - XFS 是如何找到 WFPOpen 的?

转载 作者:行者123 更新时间:2023-12-01 22:29:57 25 4
gpt4 key购买 nike

我要为我自己的硬件(可能是虚拟的)实现一个 SPI。正如我发现(也许我弄错了)当应用程序调用 WFSOpen 时,XFS 在 SPI 中调用 WFPOpen。但是这个“in SPI”指的是哪里呢?也许我应该给出在注册表某处找到 WFPOpen 的 dll 文件的地址。我也认为dll路径应该在HKLM\XFS\Service_Provider\\DllName中给出。是这样吗?这就够了吗? XFS 是否对此注册表路径和 key 敏感并使用它来查找 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/.DEFAULT(或开始 session 的用户)/XFS/LOGICAL_SERVICES/。

对于每个逻辑服务名称,都有一个带有“provider”变量的注册表项。

根据这个“provider”变量的值,XFS MANAGER 会去:

HKEY_LOCAL_MACHINE/SOFTWARE/XFS/value_for_this_provider/。

在此文件夹中,变量“dllname”包含为此 SPI 加载的 dll。

祝你好运!

关于xfs - XFS 是如何找到 WFPOpen 的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43961280/

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