在Vista和XP中模拟Control-Alt-Delete键序列

我可以在Vista中使用C#/ C ++代码控制 + Alt + 删除序列来模拟吗? 当UAC启用/禁用? 如何在XP中完成?

你能提供一个在Vista中工作的代码示例吗?

用于模拟安全注意序列(SAS)的现有代码(大多数人称为控制alt删除或ctrl-alt-del)不再适用于Windows Vista。 看来,微软提供了一个名为SimulateSAS()的函数库。 这是不公开的,应该通过向saslib@microsoft.com发送邮件来请求它。

有一个类似的库提供以下功能:

  • 无论是否有用户帐户控制(UAC)
  • 支持当前,控制台和任何终端服务器会话
  • 不需要驱动程序
  • 调用应用程序不需要签名或具有特殊的清单
  • 支持多种编程语言

请注意,这个图书馆不是免费的。 同时,如果您对此感兴趣,可以联系info@simulatesas.com 。

请使用以下信息,“saslib@microsoft.com”已被弃用,不太可能得到任何回应。 以下信息已足够。

从Windows 7操作系统和附带的软件开发套件(SDK)的公共可用性开始,Vista应用程序的SAS功能只能通过Windows SDK获得。 通过SASLIB包的电子邮件发行支持,saslib将停止。

有关如何下载平台SDK的信息可以在以下链接的“Windows SDK for Windows 7和.Net Framework 3.5 SP1”的Microsoft下载中心页面上找到: http : //www.microsoft.com/downloads/details .aspx?FamilyID = c17ba869-9671-4330-a63e-1fd44e0e2505&displaylang = en 。

安装此SDK后,您将在redist目录中找到可再发行的sas.dll:

\ Program Files \ Microsoft SDKs \ Windows \ v7.0 \ redist \ x86 \ sas.dll

\ Program Files \ Microsoft SDKs \ Windows \ v7.0 \ redist \ amd64 \ sas.dll

\ Program Files \ Microsoft SDKs \ Windows \ v7.0 \ redist \ ia64 \ sas.dll

PostMessage(HWND_BROADCAST,WM_HOTKEY,0,MAKELONG(MOD_ALT | MOD_CONTROL,VK_DELETE));

你从user32的dll获得PostMessage

编辑: CodeProject文章,它有代码

编辑:有一些VNC的讨论为什么不能在Vista中工作,以及如何设置UAC来允许它。