想要实现自动解锁凭证。
我使用了SampleV2CredentialProvider演示,并在“CSampleCredential :: Initialize”中编写了帐户密码,如下所示
hr = SHStrDupW(L“mypassword”,&_rgFieldStrings [SFI_PASSWORD]);
并在SetSelected中更改* pAutoLogin = true。
但是弹出“登录”窗口,我无法直接登录系统而不点击按钮。
我还在CSampleProvider :: GetCredentialCount中更改了* pbAutoLogonWithDefault = true,但仍然弹出按钮。
我刚检查了一个我的凭证提供商的代码。
在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;
}
在qazxsw poi里面我只做这个:
ICredentialProviderCredential::SetSelected
一切都很好。 (代码片段完全是从真实项目中复制粘贴)