Как использовать безопасный рабочий стол в Windows Vista и W7? - PullRequest
3 голосов
/ 11 ноября 2009

В Windows Vista добавлена ​​новая функция под названием «Безопасный рабочий стол». Это выглядит великолепно и действительно привлекает внимание пользователя. Но теперь я хочу использовать этот рабочий стол в своем приложении .NET / C # или Delphi / WIN32. И используйте его для моего собственного диалога, в котором у пользователя будет запрашиваться около 5 различных, но конфиденциальных фрагментов информации.

Есть ли способ использовать его в .NET? Есть ли способ использовать его в WIN32?

Ответы [ 3 ]

5 голосов
/ 28 июня 2011

Возможно, вы захотите спросить команду, которая сделала KeePass. Они реализовали в своей программе возможность вводить мастер-пароль для своей базы данных в Windows Secure Desktop, чтобы избежать кейлоггеров.

Кроме того, их программа с открытым исходным кодом и источник можно скачать здесь: http://keepass.info/download.html

3 голосов
/ 12 ноября 2009

Если вы подумаете об этом, вы обнаружите, что нет способа изменить этот защищенный рабочий стол.

Безопасный рабочий стол выше обычного рабочего стола, все остальное отключено. И это не позволяет нормальным программам мешать ему (иначе это было бы бесполезно).

И AFAIK, он также работает с повышенными привилегиями, поэтому он может повысить то, к чему он обращался, если вы нажмете «да».

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

2 голосов
/ 02 октября 2015

Похоже, что Secure Desktop достигается с помощью следующих методов Windows API:

  • CreateDesktop()
  • SwitchDesktop()
  • CloseDesktop()
  • SetThreadDesktop()
  • GetThreadDesktop()
  • GetCurrentThreadId()

Внедрение C # Secure Desktop @ CodeProject
Справочник по функциям MSDN Window Station и Desktop

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...