Как сделать снимок экрана защищенного рабочего стола Windows?

По умолчанию приглашение UAC для Windows Vista / 7/8 отображается на защищенном рабочем столе. К сожалению, клавиша Print Screen не имеет никакого эффекта при просмотре защищенного рабочего стола. Я вижу причины этого: ни одно пользовательское приложение не сможет захватить содержимое защищенного рабочего стола.

Тем не менее, мой вопрос остается: есть ли способ получить скриншот этого рабочего стола?


Изменить: возможно, это поможет, если я объясню проблему.

В настоящее время я запускаю Windows 8, и у меня есть небольшой монитор на основе DisplayLink, который я бы хотел использовать. Этот драйвер был только что выпущен и отлично работает, за исключением того, что он ломается на защищенном рабочем столе. Я хочу опубликовать отчет об ошибках на форумах и, чтобы сделать это, мне нужен скриншот. Очевидно, что проблема не проявится на стандартном рабочем столе – и запуск Windows в виртуальной машине невозможно, потому что Windows 8 требует аппаратной виртуализации (которой у меня нет), и заставить USB-мониторы работать с виртуальной машиной в любом случае сложно.

Я нашел способ «черной шляпы» сделать это …

Введите описание изображения здесь

Когда на безопасном рабочем столе инструменты доступности все еще работают отлично … поэтому я использовал свою копию FastStone Capture Portable , я перешел в c:\windows\system32 и переименовал osk.exe в osk.exe.old и скопировал / Переименован в fscapture.exe из каталога osk.exe в osk.exe внутри каталога system32.

Затем я перешел к приглашению UAC и нажал клавишу « Win Key + и нажал кнопку «на экранной клавиатуре».

И … Запуск FastStone Capture начался, хотя это был просто пробный … использование его в этом режиме не могло получить доступ к моим данным о лицензии …. Я смог сделать снимок просто отлично и сохранить его … хотя, когда я Думал, что я c:\windows\syswow64\config\systemprofile\desktop на своем рабочем столе, он действительно отправился в c:\windows\syswow64\config\systemprofile\desktop … вы узнаете что-то новое каждый день!

Исходя из вышесказанного, я всегда думал, что защищенный рабочий стол UAC был повышенной средой с использованием ваших собственных учетных данных, но, я думаю, это фактически запущено под пользователем System поэтому экран печати может действительно работать, он просто не находится под Контекст вашего пользователя – имея в виду, если бы вы использовали копию краски вместо Fast Stone Capture, сделайте снимок экрана, а затем запустите Paint с помощью экранной клавиатуры, это может просто работать!

Изменить — обновить —

Краска выходит из окна! Просто проверял мою теорию, и это не сработало, я не совсем точно знаю, но, полагаю, если вы используете почти любой инструмент для захвата экрана и мой метод выше, он должен работать.

Получите цифровую камеру и сделайте снимок экрана.

Тем не менее, мой вопрос остается: есть ли способ получить скриншот этого рабочего стола?

Процесс, выполняющийся как SYSTEM и установленный в соответствующем месте, может обойти UIPI и перейти на защищенный рабочий стол.

Используйте существующие программы, которые это делают – RealVNC (не, к сожалению, бесплатная версия) и UltraVNC.

Запустите сервер на своем ПК и подключите клиента к нему с другого компьютера. Сделайте снимок экрана окна клиента.

Хотя, возможно, так же просто сделать снимок экрана.

Есть еще лучший способ. С помощью двух бесплатных инструментов с открытым исходным кодом, Greenshot и Process Hacker , вы сможете создать скриншот защищенного рабочего стола с такими преимуществами :

  • Никаких возиться и никаких изменений в системном файле или реестре не требуется
  • Вам не нужно вводить что-либо в командной строке (для пользователей мыши это преимущество)
  • Это проще выполнить и, помимо первой настройки, намного меньше времени. Давайте начнем!

    1. Загрузите Greenshot и настройте параметры, чтобы он автоматически сохранял изображение всего экрана в папке, если вы нажимаете клавишу «Печать экрана».

    2. Загрузите процесс Hacker. Если вы видите главное окно Process Hacker, убедитесь, что Greenshot закрыт и нажмите «Hacker» и «Run as …».

    3. Выберите исполняемый файл Greenshot в «Программе». В поле «Имя пользователя» щелкните список и выберите «NT AUTHORITY \ SYSTEM». «Тип» должен быть Service, Session ID 1 и «Desktop» выбрать «WinSta0 \ Winlogon». Это важно!

    4. Теперь вам должно быть хорошо, нажмите «ОК», когда Greenshot закончил загрузку (должен быть коротким), откройте окно UAC и нажмите клавишу печати. Теперь вы должны увидеть изображение защищенного рабочего стола в указанной папке в Greenshot! Если вам больше не нужно создавать скриншоты UAC, просто запустите процесс Greenshot.

Повеселись! Я подтвердил и испытал это сам после нескольких тестов, потому что мне пока не понравились решения.

Я предлагаю другой вариант, чем использование виртуальной машины, vnc или изменение реестра или системных файлов, которые могут быть неприятными или невозможными в некоторых случаях.

Сначала вам понадобится программное обеспечение для скриншотов, для этого ответа я буду использовать 7capture, который является бесплатным, но я считаю, что это можно сделать с другими программами.

Во-вторых, вам понадобится PsExec из пакета PsTools , этот инструмент позволит помещать 7capture внутри Windows Secure Desktop без изменения каких-либо системных файлов, просто создавая и удаляя службу, которая автоматически выполняется PsExec.

Затем с установленным 7capture и с помощью PsTools, извлеченных в какую-либо папку, выполните следующие действия:

1) Открыть CMD в качестве администратора.

2) Установите текущую папку в папку, в которой были извлечены cd path_to\PSTools : cd path_to\PSTools

3) Запустите 7capture внутри Windows Secure Desktop с помощью следующей команды: PsExec /h /x /d /s "path_to\7capture.exe"

Где:

-h: Если целевая система Vista или выше, процесс выполняется с повышенным токеном учетной записи, если он доступен.

-x: отобразить пользовательский интерфейс на защищенном рабочем столе Winlogon (только для локальной системы).

-d: Не ждите завершения процесса (не интерактивный).

-s: Запустите удаленный процесс в Системной учетной записи.

4) Откройте Windows Secure Desktop, который вы хотите сделать. (UAC Prompt, Ctrl + Alt + Del и т. Д.)

5) Используйте Ctrl + PrintScreen, чтобы сделать снимок всего одного окна или PrintScreen, чтобы сделать снимок всего экрана.

6) Используйте Alt + Tab, чтобы переключиться на 7capture.

7) Просто сохраните файл, где хотите. (Если у вас проблемы с полноэкранным изображением, просто сохраните его как BMP)

И здесь вы можете увидеть результаты на моем Windows 7 (бразильский португальский язык):

Окно командной строки UACПолноэкранный режим UAC

Если вы установите TeamViewer на свой компьютер и перезагрузите компьютер, Teamviewer сможет получить доступ к приглашению UAC. С другого компьютера, использующего Teamviewer, вы можете сделать снимок экрана всего рабочего стола, в то время как Teamviewer виден, но не имеет фокуса, и вы получите скриншот подсказки UAC.

Другой вариант – использовать autoitscript (от autoitscript.com)

Это бесплатный скриптовый язык, основанный на BASIC, предназначенный для автоматизации графического интерфейса Windows и общего сценария. Он использует комбинацию имитируемых нажатий клавиш, движения мыши и обработки окна / управления.

С помощью функции send () вы можете имитировать нажатие на экране принтера. Взятые с сайта примеры https://www.autoitscript.com/autoit3/docs/functions/Send.htm :

 Example() Func Example() Send("{PRINTSCREEN}") EndFunc 

Перейдите сюда http://www.autoitscript.com/site/autoit/downloads/, чтобы загрузить его.

Я не пробовал это решение самостоятельно, но выглядел довольно прилично, учитывая, что вам нужно взломать, чтобы решить вашу проблему.

Попробуй. Надеюсь, я помог.

Сделайте скриншоты в любом месте

Защищенный рабочий стол активен при возникновении любого из следующих событий: пользователь блокирует свой рабочий стол (Windows + L), активируется экранная заставка (когда ни один пользователь не зарегистрирован) или по умолчанию, когда элемент управления учетными записями пользователей представляет приглашение.

Источник: XPDM против WDDM

Идея заимствована из ответа Уильяма Хильсума, но есть разница: вам не нужно заменять какой-либо системный файл, и его легче отменить. Следуя приведенным ниже инструкциям, нажмите Win + U, когда вам нужно сделать снимок экрана с защищенного рабочего стола.

Переназначить утилиту Ease of Access

  1. Откройте командную строку как администратор.
  2. Введите или вставьте следующую команду и замените X:\Path\to\file.exe фактическим путем исполняемого файла инструмента захвата экрана по вашему выбору. Затем нажмите Enter .

     reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Utilman.exe" /v "Debugger" /t REG_SZ /d "X:\Path\to\file.exe" /f 

    Примечание. Краска и встроенный инструмент Snipping Tool не могут использоваться: вам нужно будет полагаться на сторонние программы. Рабочие инструменты, например, Lightshot , Greenshot и ShareX .

Отменить изменения

  1. Откройте командную строку как администратор.
  2. Введите или вставьте следующую команду и нажмите Enter :

     reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Utilman.exe" /f 

Я не знаю много о безопасном рабочем столе, но теоретически вы могли бы открыть Snipping Tool и использовать его, чтобы сделать снимок экрана таким образом. Нет редактирования реестра, нет переименования файлов, нет. Это очень простой и простой способ. Или найдите «Snipping Tool» или откройте Run (сочетание клавиш: Win + R) и введите «snippingtool» или «snippingtool.exe».

В любом случае откройте его и используйте режим «Полноэкранный снип». В Windows 10 нажмите стрелку рядом с кнопкой «Режим» и выберите «Полноэкранный снимок». В старых версиях Windows нажмите стрелку рядом с кнопкой «Создать» и выберите «Полноэкранный снимок». Это автоматически копируется в окно Snipping Tool, где вы можете добавлять заметки, сохранять снипп или отправлять их по электронной почте из окна Snipping Tool. Дополнительную информацию см. На странице справки Microsoft.

Я использую Windows Vista SP2. Я не сталкивался с такими ограничениями выше. Мой экран печати работает как шарм. Вы не можете избавиться от этого, если не отключить UAC ( U ser A ccount C ontroller). Для этого используйте msconfig.exe . Посмотрите «отключите настройки UAC». Затем установите зеленый снимок; Это полезная программа, я думаю. Я использую этот метод без хлопот.

Interesting Posts
Давайте будем гением компьютера.