Russian Qt Forum
Ноябрь 23, 2024, 09:50 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1] 2 3 ... 5   Вниз
  Печать  
Автор Тема: Запрет создания скриншотов  (Прочитано 40109 раз)
Олег
Гость
« : Декабрь 25, 2011, 18:32 »

Возникла задача - как запретить пользователю делать скриншоты экрана/частей экрана? Перехватить нажатие PrtScr проблем нет, но существует много программ, делающих скриншоты. Как отслеживать их работу?
Записан
Олег
Гость
« Ответ #1 : Декабрь 25, 2011, 19:44 »

После изучения теории задача сводится к тому, чтобы перехватывать системные функции BitBlt и StretchBlt. Вопрос в том, как это сделать?
Записан
_OLEGator_
Гость
« Ответ #2 : Декабрь 25, 2011, 19:59 »

Для чего такое извращение? (из разряда - как запретить копировать содержимое web-страницы)
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #3 : Декабрь 25, 2011, 19:59 »

После изучения теории задача сводится к тому, чтобы перехватывать системные функции BitBlt и StretchBlt. Вопрос в том, как это сделать?
Улыбающийся Даже если (предположим) удастся каким-то образом это сделать, это все равно плохо, поскольку расходы на реализацию намного превысят эффект самой фичи. Др словами "овчинка выделки не стоит", "лекарство хуже болезни и.т.п.". Когда "выходной экран" представляет какую-то ценность, обычно делают так

- ограничить resolution
- сознательно добавить напр диагональный крест, поставить "печать" и.т..п. Ну как показатель "крутизны" - невидимые "watermark(s)" (будем надеяться до этого дело не дойдет)
Записан
andrew.k
Гость
« Ответ #4 : Декабрь 25, 2011, 20:10 »

После изучения теории задача сводится к тому, чтобы перехватывать системные функции BitBlt и StretchBlt. Вопрос в том, как это сделать?
Улыбающийся Даже если (предположим) удастся каким-то образом это сделать, это все равно плохо, поскольку расходы на реализацию намного превысят эффект самой фичи. Др словами "овчинка выделки не стоит", "лекарство хуже болезни и.т.п.". Когда "выходной экран" представляет какую-то ценность, обычно делают так

- ограничить resolution
- сознательно добавить напр диагональный крест, поставить "печать" и.т..п. Ну как показатель "крутизны" - невидимые "watermark(s)" (будем надеяться до этого дело не дойдет)
Почему же не стоит? Например, программа может работать с грифом. Поэтому снятие скриншота такой программы должно быть запрещено.

Для чего такое извращение? (из разряда - как запретить копировать содержимое web-страницы)
Что в этом извращенного?
« Последнее редактирование: Декабрь 25, 2011, 20:13 от andrew.k » Записан
Олег
Гость
« Ответ #5 : Декабрь 25, 2011, 20:16 »

Предлагаю отложить в сторону разговоры о полезности программы, т.к. это всего лишь студенческая задача, следовательно, от реальности оторванная полностью)
Записан
_OLEGator_
Гость
« Ответ #6 : Декабрь 25, 2011, 20:19 »

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

to andrew.k:
Если целевая аудитория - работа с грифованными документами, то, во-первых, сам доступ к такому компьютеру ограничен, установка дополнительного ПО и даже простая вставка съемного носителя запрещены, так что смысла нету защищаться от копирования.
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #7 : Декабрь 25, 2011, 20:28 »

Предлагаю отложить в сторону разговоры о полезности программы,
А их никто и не ведет, просто "себестоимость" таких решений получится ужасной, поэтому надо искать др. ходы (и посмотреть как люди делают) 
Записан
BRE
Гость
« Ответ #8 : Декабрь 25, 2011, 20:39 »

После изучения теории задача сводится к тому, чтобы перехватывать системные функции BitBlt и StretchBlt.
Это очень наивное утверждение. Улыбающийся
Для того что бы сделать скриншот экрана есть много разных вариантов и их число колеблется в зависимости от ОС.
Если говорить серьезно, то необходимо обеспечить полностью свое окружение, т.е. программа загружается вместе с ОС с livecd или подобного источника. И то, думаю, можно подключить кабель от видеокарты не в монитор, а в рекордер умеющий писать HDMI, и поработать с программой.
Записан
Олег
Гость
« Ответ #9 : Декабрь 25, 2011, 20:44 »

После изучения теории задача сводится к тому, чтобы перехватывать системные функции BitBlt и StretchBlt.
Это очень наивное утверждение. Улыбающийся
Для того что бы сделать скриншот экрана есть много разных вариантов и их число колеблется в зависимости от ОС.
Если говорить серьезно, то необходимо обеспечить полностью свое окружение, т.е. программа загружается вместе с ОС с livecd или подобного источника. И то, думаю, можно подключить кабель от видеокарты не в монитор, а в рекордер умеющий писать HDMI, и поработать с программой.


Повторюсь, что это учебная задача. Перехвата 2х функций будет более чем достаточно!
Записан
andrew.k
Гость
« Ответ #10 : Декабрь 25, 2011, 20:46 »

Да потому что цель - это защита от копирования. Вся разница в целевой аудитории - если обычный пользователь, то грош цена таким попыткам и программам - все равно найдут способ снять изображение с экрана, это самой операционной системой предусмотрено.
to andrew.k:
Если целевая аудитория - работа с грифованными документами, то, во-первых, сам доступ к такому компьютеру ограничен, установка дополнительного ПО и даже простая вставка съемного носителя запрещены, так что смысла нету защищаться от копирования.
Естественно, без орг. мер нет смысла в любой системе защиты. Твои представления о ЗГТ весьма смутны.
Защищаться от копирования не только есть смысл, но это еще и обязательно.
Не все ограничения можно осуществить орг.мерами.
Например, пользователь может иметь право работать с разными грифами, как НС так и СС. Так же он может иметь право пользоваться съемными носителями (поэтому твои слова неверны). При этом *система* должна запретить перенос информации из грифованного документа в открытый (НС). Это обязательное свойство системы.

Поэтому я и написал, т.к. вы вдвоем даже не зная обстоятельств стали говорить, то это бред и слишком дорого.
« Последнее редактирование: Декабрь 25, 2011, 20:49 от andrew.k » Записан
BRE
Гость
« Ответ #11 : Декабрь 25, 2011, 20:46 »

Повторюсь, что это учебная задача. Перехвата 2х функций будет более чем достаточно!
В google: hook dll
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #12 : Декабрь 25, 2011, 21:09 »

Повторюсь, что это учебная задача. Перехвата 2х функций будет более чем достаточно!
Налицо "замашки будущего начальника" Улыбающийся  Типа "вот я так хочу" - а плохо оно или хорошо, разумно или нет - не волнует. Надо отчитаться - не по делу, не по уму, а так, "абы було". Ну так флаг Вам в руки, гуглите что-то типа "перехват Windows API" - там таких дятлов много  Улыбающийся
Записан
cya-st
Гость
« Ответ #13 : Декабрь 25, 2011, 22:47 »

Цитировать
Повторюсь, что это учебная задача. Перехвата 2х функций будет более чем достаточно!
Ниче себе задачки студентам дают... Крутой запретить делать скриншоты В замешательстве
Записан
vregess
Гость
« Ответ #14 : Декабрь 26, 2011, 00:39 »

После изучения теории задача сводится к тому, чтобы перехватывать системные функции BitBlt и StretchBlt.
Это очень наивное утверждение. Улыбающийся
Для того что бы сделать скриншот экрана есть много разных вариантов и их число колеблется в зависимости от ОС.
Если говорить серьезно, то необходимо обеспечить полностью свое окружение, т.е. программа загружается вместе с ОС с livecd или подобного источника. И то, думаю, можно подключить кабель от видеокарты не в монитор, а в рекордер умеющий писать HDMI, и поработать с программой.


Ох как сложно. Нужно просто запустить программу в виртуальной машине - и наделать скриншотов.

Ну а отвечая на вопрос  "как запретить пользователю делать скриншоты экрана/частей экрана?" - никак.
Участвовал я в разработке подобной херни, вспоминать не хочется.
Записан
Страниц: [1] 2 3 ... 5   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.147 секунд. Запросов: 23.