繁体   English   中英

以编程方式解锁Windows工作站

[英]Unlock Windows workstation programmatically

我想写一个解锁工作站的小应用程序。 把我需要的规格变得非常简单:让一个在规定的时间运行的exe(让我们说是午夜)解锁工作站。 当然,应用程序知道登录帐户的用户和密码。

我知道LogonUser API并尝试使用它但失败了。 有没有人有一个解决方案,代码摘录实际上适用于这个问题?

我的目标是NT5操作系统。


好吧,因为人们开始问的是什么原因:我正在开发桌面共享应用程序,我想添加解锁工作站的功能。 使用非常小且简单的应用程序在定义的时间解锁站点是为了分离问题并避免集成细节。

这样你就可以得到一个答案,而不是人们留下的答案可能会更好。

这当然是可能的,尽管很多人已经说过这并不是真的很明智,如果有人在解锁时通过电脑走路,他们需要玩多久等等,会发生什么?

不管怎样,除了暗示你有一项服务要在计算机上做任何你想要的工作,或者甚至远程连接到计算机做工作,你可能能够使用户获得以下信息。 (至于'代码例外',你可以自己做)

http://www.paralint.com/projects/aucun/是一个GINA实施,即使其他人已经登录,它也能够授予您登录的权利。 调查它可能是你正在寻找的,并且比在某个时间解锁工作站更安全。

作为替代方案,请考虑编写自己的GINA实现,该实现将在预定时间解锁。

有关GINA的信息

http://msdn.microsoft.com/en-gb/magazine/cc163803.aspx

http://msdn.microsoft.com/en-us/magazine/cc163786.aspx

解锁桌面后,我很确定你会想再次锁定它。

http://www.codeproject.com/win32/AntonioWinLock.asp

让您的应用作为服务运行,然后您不需要使用该服务设置的用户/密码。

只是添加另一个引导(没有任何判断), autoit (脚本Windows语言)可能有一个答案,如此线程中所述:

如何解锁Xp桌面

我刚发现另一个可能想要解锁桌面的场景 ;)

对于我的情况,我需要能够在断开终端会话后恢复控制台会话(我使用触摸屏连接到WinXPe信息亭,但没有键盘)。

这是我发现的命令行解决方案。 我没有关闭会话窗口以断开连接,而是使用以下行运行批处理文件。 我的会话已关闭,控制台会话已恢复解锁。

  • 在WinXP上终端会话后自动解锁工作站

     tscon.exe 0 /dest:console 
  • 对于Windows Vista / 7,控制台会话编号已从0更改为1,因此您需要使用

     tscon.exe 1 /dest:console 



来源链接: http//arstechnica.com/civis/viewtopic.php?f = 15&t = 69113

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM