Странные результаты поставщика учетных данных при перезагрузке

Я создал пользовательский поставщик учетных данных, который я пытаюсь использовать для автоматического входа в систему. Я использую образец Microsoft для реализации

case CPUS_UNLOCK_WORKSTATION:
   _cpus = cpus;
   _fRecreateEnumeratedCredentials = true;
   hr = S_OK;

я установил

ICredentialProvider::GetCredentialCount
pbAutoLogonWithDefault = TRUE;

ICredentialProviderCredential2::SetSelected 
pbAutoLogon = TRUE;

Я также установил имя пользователя и пароль в GetSerialization(), который в настоящее время является локальным входом в систему.

У меня действительно странное поведение с провайдером, когда я запускаю компьютер с Windows 10, появляется учетная запись для входа в систему, я вижу, что Mail и Skype появляются на экране в правом нижнем углу. Но не полностью разблокировать рабочий стол, я должен щелкнуть по экрану или нажать Ctrl + Alt + Delete, а затем нажать кнопку входа в систему на провайдере. Что странно, так это то, что профиль пользователя полностью авторизован. Мне просто нужно удалить эту заставку.

введите здесь описание изображения

Если я выйду из системы с текущим профилем на машине, мне будет предложено указать поставщика учетных данных и кнопку «Войти», как показано на рисунке ниже.

введите здесь описание изображения

Если я перезапущу машину, нажав кнопку питания внизу слева, машина перезагрузится и войдет в систему, и у меня будет доступ к рабочему столу.

Я хочу добиться автоматического входа в систему с поставщиком учетных данных.


person user1403598    schedule 19.03.2021    source источник
comment
Вы использовали C или C++? Пожалуйста, добавляйте только тот, который вы действительно использовали   -  person Michael Kotzjan    schedule 19.03.2021
comment
Извините, я, должно быть, добавил тег C, не осознавая этого.   -  person user1403598    schedule 19.03.2021
comment
Взгляните на этот ответ.   -  person Alexander    schedule 28.03.2021