0

我们有一个应用程序需要从管理员帐户获取到另一个受限帐户,反之亦然。目前我们在注册表中设置自动登录,然后重启机器。由于机器启用了 EWF,这最多需要 3 次重新启动。我们的客户支持不能坐等远程机器重启,而电话里有一位愤怒的客户。

我们有一个 Windows 服务和一个在机器上运行的 ui(用 C# 编写)。其中大部分是windows 7,但也有一些是windows xp 和windows 8。

我想知道这里是否有人知道一种方法可以欺骗 Windows 以为它刚刚重新启动并自动登录到一个帐户。有人知道什么吗?我确实知道从登录屏幕自动登录帐户有一些棘手的方法,但据我所知,这需要编写一个模块来替换 windows XP 和 windows vista 及更高版本中的 GINA,因为 GINA 被替换为一个“Content Provider”,写一个 Content Provider 什么的,这两者看起来都有些矫枉过正,但可能是未来的解决方案。有任何想法吗?

注意:我们不是在帐户之间切换以便应用程序可以在该帐户下运行进程,而是在帐户之间切换,以便真实的人具有管理访问权限或对计算机的有限访问权限。希望这让它更清楚一点

4

2 回答 2

0

这里有一些帮助。对于 Xp,有一个简单的注册表项可以做到这一点(在谷歌搜索 AutoLogon),对于 Win7,它有点复杂。请参阅此主题: http ://answers.microsoft.com/en-us/windows/forum/windows_7-security/how-to-turn-on-automatic-logon-in-windows-7/99d4fe75-3f22-499b- 85fc-c7a2c4f728af

我想我们在某个地方运行了类似的东西,但这不是我的任务,而且这周同事正在休假。也许上面的链接有帮助,否则我会问他。

于 2013-10-29T20:35:13.040 回答
0

如果您有一个需要在其他用户和管理员之间运行的应用程序,您应该创建一个启动器应用程序。启动器应用程序应该使用Process.Start()来启动您的应用程序。您可以提供ProcessStartInfo参数,Process.Start()以便您可以使用不同的凭据运行应用程序。

于 2013-10-29T20:04:58.113 回答