как исправить всплывающую подсказку - PullRequest
0 голосов
/ 04 апреля 2019

хочу реализовать учетные данные автоматической разблокировки.

Я использовал демонстрационную версию SampleV2CredentialProvider и написал пароль учетной записи в "CSampleCredential :: Initialize" следующим образом:

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

и измените значение * pAutoLogin = true в SetSelected.

однако всплывающее окно "войти в систему", я не мог войти в систему без нажатия кнопки.

Я также изменил * pbAutoLogonWithDefault = true в CSampleProvider :: GetCredentialCount, но кнопка все еще всплывает.

1 Ответ

0 голосов
/ 10 апреля 2019

Я только что проверил код одного из моих провайдеров учетных данных.
Внутри 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;

Все работает нормально.
(Фрагменты кода точно скопированы из реального проекта)

...