如何截取 Window 安全桌面的屏幕截图?

Nat*_*man 25 windows uac secure-desktop

默认情况下,Windows Vista/7/8 的 UAC 提示显示在安全桌面上。不幸的是,Print Screen在查看安全桌面时,该密钥似乎没有任何影响。我可以看到这背后的原因 - 没有用户模式应用程序应该能够捕获安全桌面的内容。

但是,我的问题仍然存在:有没有办法获得此桌面的屏幕截图?


编辑:如果我解释这个问题,也许会有所帮助。

我目前运行的是 Windows 8,我有一个基于 DisplayLink 的小型显示器,我想使用它。该驱动程序刚刚发布并且运行良好 - 除了它在安全桌面上中断。我想在那里的论坛上发布错误报告,为此,我需要一个屏幕截图。显然,这个问题不会在标准桌面上表现出来——而且在 VM 中运行 Windows 是不可能的,因为 Windows 8 需要硬件虚拟化(我没有),而且让 USB 显示器与 VM 一起工作充其量是很棘手的。

Wil*_*sum 40

我找到了一种相当“黑帽”的方式来做这件事......

在此处输入图片说明

当在安全桌面中时,辅助工具仍然可以正常工作......所以,我使用了FastStone Capture Portable 的副本,我转到并重c:\windows\system32命名osk.exeosk.exe.oldfscapture.exe从 Faststone 目录复制/重命名到osk.exesystem32 目录中。

然后我转到 UAC 提示并按Win Key+ U,然后单击“屏幕键盘”选项。

并且... FastStone Capture 开始了,虽然它只是一个试用版...在这种模式下使用它无法访问我的许可证详细信息....我能够很好地拍照并保存它...但是,当我以为我保存到我的桌面,它实际上去c:\windows\syswow64\config\systemprofile\desktop......你每天都学到新东西!

基于上述,我一直认为 UAC 安全桌面是使用您自己的凭据的提升环境,但是,我猜它实际上是在System用户下启动的- 因此,Print Screen实际上可能有效,只是不在您的上下文中用户 - 考虑到这一点,如果您要使用 Paint 的副本而不是 Fast Stone Capture,请截取屏幕截图,然后通过 On Screen Keyboard hack 启动 Paint,它可能会正常工作!

编辑---更新---

油漆在窗外!刚刚测试了我的理论,但它没有用,我不确定确切的原因,但是,我猜如果您几乎使用任何屏幕捕获工具和我上面的方法,它应该可以工作。

  • 这是对辅助功能工具的非常巧妙的使用:) (3认同)
  • 我怀疑 Paint 不会要求“UIAccess”权限才能与 UIPI 配合使用,而其他可访问性应用程序会这样做。有关要求,请参阅 [此处](http://msdn.microsoft.com/en-us/library/bb625963.aspx) 上的 *UIAccess for UI 自动化应用程序*。 (2认同)

Law*_*ceC 19

拿一台数码相机,拍下屏幕的照片。


ta.*_*.is 17

但是,我的问题仍然存在:有没有办法获得此桌面的屏幕截图?

SYSTEM在适当位置运行并安装的进程可以绕过 UIPI 并进入安全桌面。

利用执行此操作的现有程序——例如 RealVNC(不幸的是,不是免费版)和 UltraVNC。

在您的 PC 上运行服务器并将客户端从另一台计算机连接到它。截取客户端窗口的屏幕截图。

尽管拍摄屏幕照片可能同样容易。


小智 11

还有更好的方法。借助两个免费的开源工具GreenshotProcess Hacker,您将能够创建具有以下好处的安全桌面的屏幕截图:

  • 无需摆弄,无需更改系统文件或注册表
  • 您不需要在命令提示符中输入任何内容(对于鼠标用户来说这是一个好处)
  • 它更容易执行,而且除了第一次设置之外,花费的时间也少得多。开始吧!

    1. 下载 Greenshot 并配置设置,以便在您按下 Print Screen 键时将整个屏幕的图片自动保存到文件夹中。

    2. 下载进程黑客。如果您看到 Process Hacker 的主窗口,请确保 Greenshot 已关闭并单击“Hacker”和“Run as...”

    3. 在“程序”中选择Greenshot的可执行文件。在“用户名”处,单击列表并选择“NT AUTHORITY\SYSTEM”。“类型”应该是服务,会话 ID 1,在“桌面”中选择“WinSta0\Winlogon”。这个很重要!

    4. 现在你应该已经准备好了,点击“确定”,当 Greenshot 完成加载(应该很短),打开一个 UAC 窗口并按下打印键。您现在应该在 Greenshot 中的指定文件夹中看到安全桌面的图片!如果您不再需要创建 UAC 屏幕截图,只需终止 Greenshot 进程即可。

玩得开心!经过多次测试,我自己确认并测试了这一点,因为到目前为止我还没有喜欢这里的解决方案。


小智 5

我将提供另一种选择,而不是使用虚拟机、vnc 或更改注册表或系统文件,这在某些情况下可能会令人讨厌或不可能。

首先,您需要一个截图软件,对于这个答案,我将使用免费的7capture,但我相信可以使用其他软件来完成。

其次,您需要PsTools 套件中的PsExec ,该工具可以将 7capture 放入 Windows 安全桌面,而无需更改任何系统文件,只需创建和删除由 PsExec 自动完成的服务。

然后安装 7capture 并将 PsTools 解压缩到某个文件夹,执行以下操作:

1)以管理员身份打开CMD。

2) 将当前文件夹设置为解压 PSTools 的文件夹: cd path_to\PSTools

3) 使用以下命令在 Windows 安全桌面内启动 7capture: PsExec /h /x /d /s "path_to\7capture.exe"

在哪里:

-h:如果目标系统是 Vista 或更高版本,则使用帐户的提升令牌运行进程(如果可用)。

-x:在 Winlogon 安全桌面上显示 UI(仅限本地系统)。

-d:不等待进程终止(非交互式)。

-s:在系统帐户中运行远程进程。

4) 打开您要拍摄的 Windows 安全桌面。(UAC 提示,Ctrl+Alt+Del 屏幕等)

5) 使用 Ctrl+PrintScreen 只拍摄一个窗口,或使用 PrintScreen 拍摄整个屏幕。

6) 使用 Alt+Tab 切换到 7capture。

7)只需将文件保存在您想要的位置。(如果全屏图像有问题,只需将其另存为 BMP)

在这里您可以在我的 Windows 7(巴西葡萄牙语)上看到结果:

UAC 提示窗口 UAC 提示全屏