我正在尝试开发 Credentialprovider v2。我正在尝试使用 Microsoft 提供的 samplecredentialproviderv2。在安装了可再发行版 2013 并为正确的架构编译后,我注册了它并且它工作了。
我的问题是,它仅适用于第一个显示的用户磁贴。如果我列举了多个用户磁贴,它要么只显示在一个用户磁贴中,要么我出错并破坏了我的登录 UI。
我知道这个问题与这个问题非常相似。在这里,我可以说我已经尝试了上述 Microsoft 文档中所述的解决方案。有一个功能可以指示是否显示“其他用户”图块,并且此功能效果很好。唯一的问题是,else if 不起作用,因为如果你得到一个合法的瓷砖 getSid 不会到达 else if。因此,如果您在 getSid 中返回 null sid 和 hr_false,则 credentialprovider 将显示在其他用户磁贴中,但在这种情况下,不会在其他任何地方显示。如果此解决方案是硬编码的。我尝试创建多个 ICredentialProviderCredential,以便我有一个接口列表,但它不起作用。
此处提供的文档说明如下:“v2 凭据提供程序必须实现 ICredentialProviderCredential2 接口并在 GetUserSID 函数上返回有效的 SID。这会告诉 Windows 提供程序应与哪些用户关联。”
我的问题是,如何在 GetUserSid 函数中返回多个 Sid。如果您能提供帮助,那就太好了。