Всем привет. Пишу в этот раздел, а не в раздел защиты, так как именно в этой ветке собрались специалисты по графическим делам. Подскажите как защитить приложение от грабинга различными программами типа HyberSnap и ему подобных. От ACDSee 9.0 Photo Manager скриншотов спасает установка окну свойства полупрозрачности 99%, но это не спасает от HyberSnap. Задача примерно такая. Защитить приложение от снятия экрана. То есть чтобы сторонее приложение не могло сграбить отображаемые в окне приложения документы. Сторонее приложение не использует сплайсинг и прочие технологие внедрения в контекст приложения. В общем чтобы было не возможно сделать скриншот с помощью проги HyperSnap и ее аналогами. Помогите.
Спасибо за ответ но, фотографирование не входит в условие. В условие входит только сьем через приложения.
Где то на форуме уже пробегала похожая тема. На мой взгляд тем же directdraw легко снимать рабочий стол вместе со всеми overley, так что просто так защитится не получится ну никак.
Да, DirectDraw даёт прямой доступ к видеопамяти, и как от него защититься не понятно. С другой стороны если как-то косвенно защищаться. Вроде как в некоторых режимах, в дебаге, видяха возвращает мусор, а не предидущий кадр. Но это естественно для исходного процесса. Так что дествительно сделать простую защиту врятли. Может блокировать передний буфер? Но сложно сказать, у меня такой задачи не было.
Например, для защиты от directdraw все опять же сводится к написанию или приложения или драйвера хукающего его функции и методы и там уже решать давать блитить primary surface или нет.
_exe_ Есть такой метод у поверхностей DirectDraw - Lock, для копирования на неё. Microsoft рекомендует разблокировать её как можно быстрее. По идее это глобальная блокировка, для первичной поверхности, хотя могу ошибаться. Возможно её всё равно могут снять извне.