如何从凭据提供商处调用提交

cd6*_*611 3 windows login credential-providers

据我了解,当用户最终按下Submit按钮时,GetSerialization将调用该方法以获取登录详细信息。

我正在编写一个凭据提供程序,它等待一些外部信号登录,并且我不希望用户按“提交”按钮。

是否可以从凭证提供者触发提交事件?

cd6*_*611 5

我找到了一种方法。诀窍不是调用submit按钮,而是使用ICredentialProviderEvents::CredentialsChanged方法。我有一个正在运行的线程,最终将触发CredentialsChanged。然后,这将启用一个新的凭据来登录用户。

这在Microsoft示例中显示SampleHardwareEventCredentialProvider

值得注意的是Windows LogonUI会自动选择此新凭据。我不知道这是否在文档中,但这是我所经历的行为。