在 Windows 7 上注销并登录,无需用户交互

在 Windows 7 上注销并登录,无需用户交互

根据操作员的要求,我们需要自动从当前用户注销并以其他用户身份登录。所有这些都无需用户交互或知晓。当然,可以提供新用户的登录详细信息。Windows 7 提供哪些选项来实现这一点?提前致谢。

答案1

Windows 依靠名为 GINA(图形识别和身份验证)的组件来要求用户提供登录凭据。Windows 提供的标准 GINA 显示每个人都知道的常用登录字段,但可以实现自定义字段。没有什么规定需要任何用户交互:针对您的特定情况的 GINA 可能会获取有关要登录哪个用户的信息(例如,从受保护的注册表位置),然后继续登录。注销阶段只需调用标准 Win32 API 函数(ExitWindowsEx)来要求用户注销即可完成。因此,解决您的问题的一个选项可能是实现自定义 GINA DLL(通常使用 C 或 C++),请参阅MS SDK 中的详细信息. 他们还有示例代码。

也许也可以通过远程桌面服务 API(也用于快速用户切换),但我不确定它是否允许以编程方式登录用户。

实现这一点的一个非常粗暴的方法可能是将 VNC 服务器(例如 UltraVNC)作为服务安装在机器上,然后让远程(或本地)服务连接到 VNC 服务器并发送RFB 数据包就像用户在登录屏幕上输入密码一样。我对这个解决方案的可靠性有些怀疑(想象一下由于应用程序卡住而无法注销的情况,VNC 自动客户端可能会开始在打开的编辑器中输入登录密码……)

但是,我不明白如果不编写代码,有什么方法可以做到这一点。

相关内容