c++ - 重新启动时凭据提供程序的奇怪结果
问题描述
我创建了一个自定义凭据提供程序,我试图将其用于自动登录。我正在使用 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,然后单击提供程序上的登录按钮。奇怪的是用户配置文件已完全登录。我只需要删除此启动屏幕即可。
如果我使用机器上的当前配置文件注销,则会提示我提供凭据提供程序和登录按钮,如下图所示。
如果我通过单击左下角的电源按钮重新启动机器,机器将重新启动并登录到机器并且我可以访问桌面。
我希望通过凭据提供程序实现自动登录。
解决方案
推荐阅读
- php - 如何在会话中获取特定的数组值?
- python - 如何抑制以下横幅,身份验证(公钥)成功!和连接版本 2.0,客户端 OpenSSH_6.6.1 Python 上的消息
- ruby - 如何使用 https 使用 Typhoeus::Request 对象
- c# - 从服务器下载文件显示另存为对话框
- javascript - 方法应返回包含所有短于 6 个字符的字符串或以 e 开头的数组
- vue.js - 如何让 Vue 删除编译输出中的空格?
- javascript - 为 Gulp 4 重新编写 gulpfile.js,默认任务现在挂起
- python - 分割一行文本得到两个变量
- tensorflow - 在 Intel Atom 上构建 TensorFlow
- postgresql - 为什么`psql postgres`说我的密码错误?