Запретить программы захвата экрана для захвата экрана приложения - PullRequest
0 голосов
/ 24 мая 2018

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

СначалаЯ искал, можно ли блокировать такие приложения?Но я так не думаю, так как есть много способов записать / поделиться экраном.Тогда я узнал о HDCP, но, думаю, он будет применяться только к видео, а не к HTML (поправьте меня, если я ошибаюсь).Итак, я хочу что-то вроде «вывода видео DirectX» HDCP или VLC-плеера, чтобы контент не захватывался с помощью экрана печати или других методов захвата экрана.

Я предполагаю, что оверлеи D3D9 / DDraw предназначены только для видеоконтента. Могу ли я использовать это для контента HTML / в приложении Windows на основе AC #?

1 Ответ

0 голосов
/ 25 мая 2018

Я добился этого с помощью SetWindowDisplayAffinity , в соответствии с MSDN

Настройка соответствия экрана.Этот параметр указывает, где может отображаться содержимое окна.Установите это значение в WDA_MONITOR, чтобы отображать содержимое окна только на мониторе.Задайте для этого значения значение WDA_NONE, чтобы удалить привязку только к монитору.

Таким образом, установка WDA_MONITOR для обработки WinForm делает его черным при печати экрана или записи на рабочем столе или в приложении общего доступа к рабочему столу.

Изображение, полученное с помощью мобильного телефона:

enter image description here

Однако я открыт для любого другого (лучшего) ответа на этот вопрос.

...