1

Тема: Скрипт снятия скриншотов, что делается на ПК

Добрый день.

Скрипт снятия скриншотов, что делается на ПК.
Что нужно:
При входе пользователя запускался скрипт снятия скриншотов с интервалом в 10 сек, складывал скриншоты в папку имя которой равно дате, а имена файлов это время снятия скриншота.

Скриптовый язык любой.
Как можно реализовать?

2

Re: Скрипт снятия скриншотов, что делается на ПК

На AutoHotKey, помнится, было что-то подобное.

3

Re: Скрипт снятия скриншотов, что делается на ПК

ссылочка есть?

4

Re: Скрипт снятия скриншотов, что делается на ПК

Valera пишет:

ссылочка есть?

Да, в заголовке- "Поиск". Или гугл. В любом случае нужно будет сжимать данные, иначе(без учёта заголовков *.bmp файлов) при разрешении 1920×1080, через час работы скрипта папка будет весить более 2.78 гигабайт. Хотя если есть лишний винчестер на несколько сотен гигабайт, то всё норм .

5

Re: Скрипт снятия скриншотов, что делается на ПК

Valera пишет:

Добрый день.

Скрипт снятия скриншотов, что делается на ПК.
Что нужно:
При входе пользователя запускался скрипт снятия скриншотов с интервалом в 10 сек, складывал скриншоты в папку имя которой равно дате, а имена файлов это время снятия скриншота.

Скриптовый язык любой.
Как можно реализовать?

Valera,

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

6

Re: Скрипт снятия скриншотов, что делается на ПК

Статья 33. Виды соучастников преступления

1. Соучастниками преступления наряду с исполнителем признаются организатор, подстрекатель и пособник.
2. Исполнителем признается лицо, непосредственно совершившее преступление либо непосредственно участвовавшее в его совершении совместно с другими лицами (соисполнителями), а также лицо, совершившее преступление посредством использования других лиц, не подлежащих уголовной ответственности в силу возраста, невменяемости или других обстоятельств, предусмотренных настоящим Кодексом.
3. Организатором признается лицо, организовавшее совершение преступления или руководившее его исполнением, а равно лицо, создавшее организованную группу или преступное сообщество (преступную организацию) либо руководившее ими.
4. Подстрекателем признается лицо, склонившее другое лицо к совершению преступления путем уговора, подкупа, угрозы или другим способом.
5. Пособником признается лицо, содействовавшее совершению преступления советами, указаниями, предоставлением информации, средств или орудий совершения преступления либо устранением препятствий, а также лицо, заранее обещавшее скрыть преступника, средства или орудия совершения преступления, следы преступления либо предметы, добытые преступным путем, а равно лицо, заранее обещавшее приобрести или сбыть такие предметы.

Eнем итчоrП. -<

7

Re: Скрипт снятия скриншотов, что делается на ПК

Я уверен на каждое действие найдется противодействие!

Как и везде у любого решения есть те кто по разные стороны баррикад стоят.

Для осуществления соблюдения корпоративной этики и коммерческой тайны организации должны быть регламенты и соответствующее ПО - оно такое есть (личный опыт, даже внедрение)! А если для дома, то есть много бесплатных прог... поиск рулит. Но тут 3 вариант - нужен скрипт без указания цели применения... я бы не торопился с выводами, но как то уж странно все это...

Любители построили Ковчег, а профессионалы - Титаник.

8

Re: Скрипт снятия скриншотов, что делается на ПК

Возьмите FSViewer32 или i_view32 например, покурите разделы справки "Командная строка".

Нас невозможно сбить с пути, нам пофигу куда идти.

9

Re: Скрипт снятия скриншотов, что делается на ПК

Аскет, вот диспозиция действующей редакции ч.1 ст. 273 УК РФ ("Создание, использование и распространение вредоносных компьютерных программ").

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

Кстати, с такой логикой все наши скрипты, выполняющие операции с данными на компьютере, обязаны предупреждать пользователя о выполняемых операциях. Смешно же?

stir пишет:

Но тут 3 вариант - нужен скрипт без указания цели применения... я бы не торопился с выводами, но как то уж странно все это...

Ну расскажет Вам человек, что это для его личного пользования либо создает аналог teamviewer. И что? Таких программ в интернетах полным полно.

10

Re: Скрипт снятия скриншотов, что делается на ПК

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

Скриптовые решения снятия скриншотов основаны на:
1) Имитации нажатия клавиши PrintScreen - пресловутой SendKey
2) Фактическим вызовом сторонней программы из скрипта.
Другие варианты мне не известны.

1) От использования SendKey я отказался уже давно - и здесь тоже писал об этом.
Ненадежно, непредсказуемо, неуправляемо и т.д.

2) Использовать стороннюю программу можно и без скрипта - более того, без скрипта можно использовать её многочисленные дополнительные функции.

Брать копию экрана надо напрямую из видеопамяти - скрипты здесь бессильны.

11

Re: Скрипт снятия скриншотов, что делается на ПК

Брать копию экрана надо напрямую из видеопамяти

Это как?

12

Re: Скрипт снятия скриншотов, что делается на ПК

Slav пишет:

Другие варианты мне не известны.

По ссылке выше был пример с использованием функций из GDI32.dll, ещё есть PrintWidow в user32.dll.

13

Re: Скрипт снятия скриншотов, что делается на ПК

alexii пишет:

Брать копию экрана надо напрямую из видеопамяти

Это как?

alexii,

первый раз эту задачу я решил в 1992 году - на Turbo Pascale.
Затем - в разное время и для разных задач - на MASM, Borland Delphi, MS C++.
Вы какой вариант предпочитаете?

Кстати, Вы и сами можете ответить на свой вопрос погуглив "работа с видеопамятью".
Более того - попробуйте поискать "лабораторная работа с видеопамятью".
У меня первая же ссылка:
Лабораторная работа № 5 По дисциплине «Операционные системы» «Работа с видеопамятью ("экран")»
Если так дело пойдет - скоро это будут проходить в школе на уроках информатики.

14

Re: Скрипт снятия скриншотов, что делается на ПК

Александр_ пишет:
Slav пишет:

Другие варианты мне не известны.

По ссылке выше был пример с использованием функций из GDI32.dll, ещё есть PrintWidow в user32.dll.

Александр_,

Вы какую ссылку имеете ввиду?

Чтобы вызвать "функцию из GDI32.dll" классические скриптовые языки подходят меньше всего.
Точнее - из них это вообще сделать невозможно.
Имею ввиду VBS, JScript.

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

Т.к. в этой теме "чистота копирайтов" имеет принципиальное значение - MS Visual C++ 2005 Express Edition, например, распространяется совершенно легально бесплатно.
Взять копию экрана и сохранить в графический файл там даже вроде бы в комплекте примеров.

15

Re: Скрипт снятия скриншотов, что делается на ПК

Давно использую вариант VBS+DynamicWrapperX.

16

Re: Скрипт снятия скриншотов, что делается на ПК

Брать копию экрана надо напрямую из видеопамяти

Брать напрямую можно было во времена доса, если обращаться к адресу A100, насколько я помню. Сейчас это неактуально.
Если говорить об WinAPI, то можно просто использовать BitBlt c параметром GetDC(0). Как сказал коллега chessman, проще всего использовать API через DWX. Есть еще один вариант: из скрипта управлять средой VBA Ms Office и оттуда вызывать апишные функции.

17

Re: Скрипт снятия скриншотов, что делается на ПК

Slav, Windows не позволяла пользовательским программам работать напрямую с видеопамятью ни в 92 году, ни сейчас, причём, судя по #14, Вы в курсе этого. Потому Ваша формулировка относительно использования видеопамяти напрямую вызвала у меня неприятие.

18

Re: Скрипт снятия скриншотов, что делается на ПК

Согласен почти со всеми уточнениями.

Внесу коррективы в свои формулировки:
1) Проще всего для поставленой задачи "использовать BitBlt c параметром GetDC(0)".
На сегодня это позволяет делать любая среда программирования.
За исключением, к сожалению, скриптовых языков.
2) Для реализации этой возможности в скриптовых языках необходимы дополнительные средства - например, VBS+DynamicWrapperX.
Или вызов через VBA MS Office.
И т.д. и т.п.
Исключительно по моему скромному мнению, в этом случае средства не оправдывают цели.
Проще войти в любую студию и сделать это на любом языке, кроме скриптового.

PS Тему "...Windows не позволяла пользовательским программам работать напрямую с видеопамятью ни в 92 году, ни сейчас..." развивать не буду.
Во всяком случае в этом топике.
Достаточно того, что здесь уже и так обилие цитат из Уголовного Кодекса.

19

Re: Скрипт снятия скриншотов, что делается на ПК

Slav пишет:

первый раз эту задачу я решил в 1992 году - на Turbo Pascale.
Затем - в разное время и для разных задач - на MASM, Borland Delphi, MS C++.
Вы какой вариант предпочитаете?

Кстати, Вы и сами можете ответить на свой вопрос погуглив "работа с видеопамятью".
Более того - попробуйте поискать "лабораторная работа с видеопамятью".
У меня первая же ссылка:
Лабораторная работа № 5 По дисциплине «Операционные системы» «Работа с видеопамятью ("экран")»
Если так дело пойдет - скоро это будут проходить в школе на уроках информатики.

Не знаю как вы там развлекались в 1992-ом, но сейчас всё изменилось . Сейчас нет фиксированного куска памяти в котором хранится выводимая на экран картинка. Сейчас если вы хотите получать изображение "из первых рук", то вам придётся перехватывать ряд функций и интерфейсов. Ещё можно подписаться на различные события, но там есть ряд ограничений, см. mirror driver из WDK(распространяется бесплатно).

Slav пишет:

Вы какую ссылку имеете ввиду?

Она тут одна . Через гугл попадаем в эту тему.

Slav пишет:

Чтобы вызвать "функцию из GDI32.dll" классические скриптовые языки подходят меньше всего.

ТС сразу написал:

Valera пишет:

Скриптовый язык любой.

Так что ограничений нет.

20

Re: Скрипт снятия скриншотов, что делается на ПК

PS Тему "...Windows не позволяла пользовательским программам работать напрямую с видеопамятью ни в 92 году, ни сейчас..." развивать не буду.

Во всяком случае в этом топике.

Достаточно того, что здесь уже и так обилие цитат из Уголовного Кодекса. smile

Можно письмом.

21

Re: Скрипт снятия скриншотов, что делается на ПК

jsdraw.dll ?

Я конечно далек от мысли... (с)

22

Re: Скрипт снятия скриншотов, что делается на ПК

Александр_ пишет:

Не знаю как вы там развлекались в 1992-ом, но сейчас всё изменилось . Сейчас нет фиксированного куска памяти в котором хранится выводимая на экран картинка. Сейчас если вы хотите получать изображение "из первых рук", то вам придётся перехватывать ряд функций и интерфейсов. Ещё можно подписаться на различные события, но там есть ряд ограничений, см. mirror driver из WDK(распространяется бесплатно).

Александр_,

действительно, многое изменилось - выросло целое поколение программистов, для которых Windows единственная операционная система.

Прошу Вас провести следующий простой эксперимент.
Отключите клавиатура и включите компьютер, дождитесь знаменитого "Keyboard not found - press any key"
На экране - результат работы BIOS.
У некоторых очень даже симпатичные картинки во весь экран.
Подождите часок-другой - картинка на экране пропала?
У меня - нет, не пропала.
А теперь объясните то что Вы видите - можно с привлечением мощного аппарата "mirror driver из WDK".

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

А насчет "первых рук" еще раз повторю специально для Вас то, что уже писал:
1) Проще всего для поставленой задачи "использовать BitBlt c параметром GetDC(0)".
Конкретно для Windows - это вполне достаточный уровень "первых рук".
Но вот в других ОС это не будет работать - ведь Вы читаете из видеопамяти средствами Windows.

Александр_ пишет:

Она тут одна . Через гугл попадаем в эту тему.

Через гугл - по Вашей ссылке - я попал на 10 страниц ссылок.
Поэтому и попросил уточнить - какую конкретно Вы имеете в виду под словами "единственная".

Александр_ пишет:

ТС сразу написал:

Valera пишет:

Скриптовый язык любой.

Так что ограничений нет.

Спасибо за разъяснения.

23

Re: Скрипт снятия скриншотов, что делается на ПК

alexii пишет:

PS Тему "...Windows не позволяла пользовательским программам работать напрямую с видеопамятью ни в 92 году, ни сейчас..." развивать не буду.

Во всяком случае в этом топике.

Достаточно того, что здесь уже и так обилие цитат из Уголовного Кодекса. smile

Можно письмом.

alexii,

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

Замечу только: во все времена, тем более сегодня, существует такой класс программного обеспечения, как супер-пупер графические игры.
Которые всегда напрямую работали и с видеопамятью, и с клавиатурой, и с мышью, и со звуковыми устройствами...
Почему напрямую думаю объяснять не надо.
Поэтому если Вам действительно интересно как это делать рекомендую обратиться к любому форуму по программированию игр - там эти вопросы и найдут ответы.

24

Re: Скрипт снятия скриншотов, что делается на ПК

Slav пишет:

действительно, многое изменилось - выросло целое поколение программистов, для которых Windows единственная операционная система.

Более того, программистами теперь называются люди, которые не знают что такое стек.

Slav пишет:

Прошу Вас провести следующий простой эксперимент.
Отключите клавиатура и включите компьютер, дождитесь знаменитого "Keyboard not found - press any key"

У меня система грузится и без клавиатуры . И вообще это сообщение несёт в себе несколько противоречивую информацию

Slav пишет:

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

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

Slav пишет:

А насчет "первых рук" еще раз повторю специально для Вас то, что уже писал:
1) Проще всего для поставленой задачи "использовать BitBlt c параметром GetDC(0)".
Конкретно для Windows - это вполне достаточный уровень "первых рук". На самом деле BitBlt не всегда будет работать, оверлейные окна он не отобразит.
Но вот в других ОС это не будет работать - ведь Вы читаете из видеопамяти средствами Windows.

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

Slav пишет:
Александр_ пишет:

Она тут одна . Через гугл попадаем в эту тему.

Через гугл - по Вашей ссылке - я попал на 10 страниц ссылок.
Поэтому и попросил уточнить - какую конкретно Вы имеете в виду под словами "единственная".

В моей цитате синеньким выделена ссылка- по ней надо тыкнуть.

25 (изменено: Аскет, 2012-07-28 08:04:39)

Re: Скрипт снятия скриншотов, что делается на ПК

OFF:

Ну, ЧТД, в принципе.
Я писал пост 2 мая 2012 года, а случилось оно через 26 дней.
Видимо, чем-то задним прочувствовал сквозь время.
Ибо через ~месяц услышал новость об эпидемии по евроньюсу.

wiki пишет:

Flame - компьютерный червь, поражающий компьютеры под управлением операционной системы Microsoft Windows версий XP, 7, Vista.

Его обнаружил Роэль Шувенберг, старший научный сотрудник по компьютерной безопасности Лаборатории Касперского во время исследования вируса Wiper, атаковавшего компьютеры в Иране, о чём было объявлено 28 мая 2012 года.

Вирус способен собирать файлы данных, удалённо менять параметры компьютера, записывать звук, скриншоты

И вот что удивительно:
Касаемо звука - однажды, через IM, отрывая от сердца, поделился относительно уникальной наработкой с JSman, неистово отстаивающим в теме презумпции невиновностей.
Потом эта тема.
Возможно - ужасная чреда совпадений, а возможно что...

Ещё эти соседи - паразиты-хохлы ЦРУшные агенты...чорт их побери >_<

26

Re: Скрипт снятия скриншотов, что делается на ПК

Аскет, большое спасибо Вам за помощь в создании червя, предназначенного для компьютерной атаки на Иран. Ваш относительно уникальный код помог собрать воедино все скрипты и использовать их как оружие. От агентов ЦРУ, кстати, большой Вам привет. А врачи советуют сократить дозировку наркотических средств и психотропных веществ.

27

Re: Скрипт снятия скриншотов, что делается на ПК

Вообще-то намёк был на "через IM", переписка через который принадлежит AOL'у (по лиц. соглашению), и наверняка парсится модерастами оного /посему, всем крайне не рекомендую обмениваться через icq "интимной" инфой составляющих какую-либо тайну, да с непроверенными людьми/.

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