Я написал собственный CredentialProvider, прослушивающий события, отправленные через Bluetooth. Пока все работает нормально. За исключением того факта, что после отправки события экран входа в систему меняется и показывает единственную кнопку «Войти» под именем пользователя. Как указано в ответах на этот SO-вопрос, я сделал следующее для автоматического входа в систему:
HRESULT CMobileCredential2::SetSelected(_Out_ BOOL *pbAutoLogon)
{
LOG_FUNCTION;
*pbAutoLogon = true;
return S_OK;
}
и в коде обработки событий я вызываю:
HRESULT hr = _pcpe->CredentialsChanged(_upAdviseContext);
if (S_OK != hr)
{
LOG_ERROR("Could not login!");
}
Я думал, что LogonUI автоматически войдет в систему, если я установлю для автоматического входа значение true? Почему я должен нажимать на другую кнопку? Есть ли способ избежать такого поведения?
ИЗМЕНИТЬ:
Следующее можно найти в «Техническом справочнике поставщика учетных данных» от Microsoft:
В Windows 10, если поставщик учетных данных хочет выполнить автоматический вход пользователя в систему там, где мы считаем это неуместным, мы нарисуем кнопку «Войти» в виде «лежачего полицейского».
Я думаю, что это точка, которую я здесь затронул, но что неуместно? Используемый пароль состоит из символов нижнего и верхнего регистра, а также некоторых цифр. Есть ли возможность это обойти?