Внешняя компонента для создания снимков экрана

Компонента предназначена для создания снимков экрана и копирования их в файлы или буфер обмена.

Методы компоненты

Метод Русский синоним Действие
ScreenShot СнимокВБуфер Изображение экрана копируется в буфер обмена
ScreenShotToBMP СнимокВBMP Изображение экрана сохраняется как точечный рисунок
ScreenShotToJPG СнимокВJPG Изображение экрана сохраняется в файл, сжатым JPEG
ScreenShotToPNG СнимокВPNG Изображение экрана сохраняется в формате PNG

  

 

 

Во всех методах компоненты можно указать необязательный параметр типа булево для создания снимка, содержащего только окно 1С. Значение параметра по-умолчанию: Ложь (Ложь — весь экран, Истина — только окно 1С).

Компонента разработана по технологии Native.

Работает только в Windows с 1С v. 8.2, 8.3 (обычное приложение, толстый и тонкий клиент управляемого приложения).

Пример использования можно скачать отдельно (выгрузка базы (обычное и управляемое приложение)).

37 Comments

  1. Boudybuilder

    Супер!

    Где применять будем?

    Reply
  2. genayo

    Вот спасибо. Какраз сейчас такая задача встала, а тут и решение. Погоняю-потестирую.

    Reply
  3. Steelvan

    Плюсанул за реализацию (не за результат, а за процесс 🙂 ).

    А если два экрана, что с таким снимком делать ?

    А если нужно вырезать часть картинки экрана ?

    А если нужна потом минимальная доработка ?

    Reply
  4. Steelvan

    Да и исходников нет.

    Reply
  5. andrewks

    (3) Steelvan, ну, для работы с графикой есть http://infostart.ru/public/15599/ , например

    Reply
  6. RussiaTuristo
    А если два экрана, что с таким снимком делать ?

    А если нужно вырезать часть картинки экрана ?

    А если нужна потом минимальная доработка ?

    Есть маленькая портативная программка FastStone Capture

    ссылка страница скачки FastStone Capture

    результат примерно такой

    Reply
  7. Steelvan

    С такими же трудозатратами и в Paint можно.

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

    Reply
  8. Steelvan

    (1) Boudybuilder,

    А область применения очень широкая.

    Начиная от службы поддержки, когда пользователь вместо обоснования на пальцах, снимет скриншот и с текстом отправит в службу поддержки.

    При тестировании, когда тестировщику нужно приложить скрин результата тестирования.

    При написании ТЗ, когда в документацию нужно приложить картинки прототипа.

    Но все это можно реализовать только когда:

    1) Можно вырезать часть экрана.

    2) На картинку можно наложить объекты

    3) Картинку можно редактировать.

    Reply
  9. le_

    (8) Я думаю нет смысла реализовывать такой редактор в виде внешней компоненты к 1С. Есть очень удобные готовые приложения, в которых реализован описанный вами функционал. Например, SnagIt — и снимки выделенной области делает, и видео снимает, и всякие рамочки, стрелочки и прочие рюшечки наложить позволяет во встроенном редакторе. Рекомендую.

    Если кому нужно, позже могу добавить в компоненту возможность сделать снимок только окна 1С (без панели задач, раб. стола и т.п.).

    Reply
  10. Dnki

    Классная мысль. Службе поддержки просто как воздух нужна. В чем смысл:

    — далеко не у каждого пользователя 🙂 есть программа типа «SnagIt» (профессиональная, но, кажется, платная).

    — для тети-бухгалтера сверхзадача нажать ПринтСкрин, во что-то вставить, да еще и отправить.

    — а я еще прикручу отправку полученного файла на мой ФТП.

    Консультант только скомандовал «Нажми кнопку». «Ага, теперь вижу».

    — вспомнил. Контраргумент: есть куча программ удаленного просмотра и управления компом (Team, Ammy). Но все это для уже более серьезного случая и все требуют, пусть и минимального, времени на установку. Плюс препоны местного сисадмина.

    А не помешал бы снимок только 1С.

    Reply
  11. le_

    (10) Dnki, обновил компоненту. Теперь можно «фотать» только окно 1С-ки.

    Reply
  12. Mudrii_Gankster

    Dnki, обновил компоненту. Теперь можно «фотать» только окно 1С-ки.

    прикольно,а можно сфотать только определенное миди окно?

    Reply
  13. Mudrii_Gankster

    Win7 x64 regsvr не регистрирует компоненту, загрузка проходит компоненты в 1с 8.2, а при попытке создать объект, выходит ошибка «Тип не определен (Addin.SS.ScreenShoter)»

    Чего-то не хватает?

    Reply
  14. le_

    Mudrii_Gankster, под Win7 x64 компонента не тестировалась. Позже напишу, что нужно сделать…

    Reply
  15. le_

    (13) Mudrii_Gankster, проверил компоненту под Win7 x64 — всё отработало без ошибок (1с-ка 32-битная).

    Reply
  16. Yashazz

    Есть ли возможность перехватывать только активное окно, т.е. сделать аналог Alt+Prtsc? Сейчас модальное окно читается вместе с полным экраном, а в режиме «только 1С» не читается вообще.

    Вещь реально нужная, в любом случае спасибо.

    Reply
  17. Serj1C

    Известна ли проблема при работе от пользователя без административных прав скриншот делается, но сохраняется не в тот файл, часть имени отрезает, добавляет иероглифы? Удивительно, что файл вообще записывается. (WinXP 32x)

    Reply
  18. Chrizt

    Но почему не PNG?

    Этот формат наиболее оптимизирован для работы с данными подобного рода.

    Reply
  19. cargobird

    На 64-разрядной серверной винде dll-ка не зарегистрировалась…

    Reply
  20. le_

    (19) cargobird, её не нужно регистрировать.

    Reply
  21. cargobird

    (20) видимо из комментариев этого не понял, а в описании это не уточнено.

    В любом случае спасибо)

    Reply
  22. brrart

    Для моей задачи компонента прям то что надо.

    Без лишних наворотов.

    Засунул её в общий макет. Файл скриншота сохраняю во временное хранилище. Отправляю его на почту. Профит!

    Reply
  23. Flok

    Подтверждаю, в Windows server 2012 — 64 x — в серверном режиме — компонента не запускается

    В win 7 x64 в файловом режиме все замечательно работает

    Reply
  24. le_

    (23) Попробуйте компоненту, скомпилированную для платформы x64.

    Reply
  25. le_

    (23)(24) Это для клиента x64. На сервере 1С нет смысла подключать компоненту.

    Reply
  26. Flok

    Компонента подключается конечно же на клиенте ( в модуле с директивой компиляции Клиент ) для 32 битных клиентов работает , а для 64 битных клиентов не работает выдает ошибку Тип не определен (Addin.SS.ScreenShoter). Пробовал подключать на 64 битном клиенте новую( от 7 января) 64 битную компоненту.

    Reply
  27. le_

    (26) Обновил компоненту в публикации — попробуйте.

    Сам тестировал на 8.3.10.2667 x86-64 и 8.3.10.2699 x86-64 — работает.

    Reply
  28. Flok

    Коллеги подтверждаю, все работает без проблем

    Reply
  29. ВикторП

    Подтверждаю (17)

    Известна ли проблема при работе от пользователя без административных прав скриншот делается, но сохраняется не в тот файл, часть имени отрезает, добавляет иероглифы? Удивительно, что файл вообще записывается. (WinXP 32x)

    проверено на server 2003 ent edition sp2 32 бита.

    на 64 работает

    Reply
  30. le_

    (17) Исправлено. Проблема возникала, если длина пути превышала 64 символа. Сейчас допустимая длина пути — 260 символов.

    Reply
  31. le_

    (29) Исправлено. Проблема возникала, если длина пути превышала 64 символа. Сейчас допустимая длина пути — 260 символов.

    Reply
  32. ВикторП

    (31) надо повторно скачивать?

    Reply
  33. le_

    (32) Повторно sm не должны списываться.

    Reply
  34. le_

    (16) Сейчас есть такая возможность, модальные окна попадают в изображение.

    Reply
  35. le_

    (18) Теперь есть и PNG

    Reply
  36. Mopo3

    Для веб-клиента не взлетит?

    Reply
  37. iones

    А умеет эта компонента вытягивать уже хранящийся скрин в памяти (при нажатии кнопки Print Screen), вставить куда надо, но программно!

    (27)

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *