如何在弹出的窗口中修复“减速带”标志

时间:2019-04-04 09:44:36

标签: windows sign auto unlock credential-providers

想要实现自动解锁证书。

我使用了SampleV2CredentialProvider演示,并按照以下步骤在“ CSampleCredential :: Initialize”中写入了帐户密码

hr = SHStrDupW(L“ mypassword”,&_rgFieldStrings [SFI_PASSWORD]);

,然后在SetSelected中更改* pAutoLogin = true。

无论如何弹出“登录”窗口,如果不单击按钮,我无法直接登录系统。

我还更改了CSampleProvider :: GetCredentialCount中的* pbAutoLogonWithDefault = true,但该按钮仍然弹出。

1 个答案:

答案 0 :(得分:0)

我刚刚检查了我的凭据提供程序之一的代码。
ICredentialProvider::GetCredentialCount方法内部,执行以下操作:

DWORD dwSize;

*pdwCount = 0;
*pdwDefault = -1;
*pbAutoLogonWithDefault = FALSE;
dwSize = 0;

// do some internal calculations

if(dwSize > 0)
{
    *pdwCount = 1;
    *pdwDefault = 0;
    *pbAutoLogonWithDefault = TRUE;
}

ICredentialProviderCredential::SetSelected之外,我仅这样做:

*pbAutoLogon = TRUE;

一切正常。
(这些代码段完全是真实项目中的复制粘贴)