0. Andry.Boris 55 03.10.11 09:35 Сейчас в теме

Создание скриншота для возможности отправки уведомления об ошибке программисту 1С

Ознакомившись с публикациями на тему «Отправка уведомления об ошибке программисту 1С с приложением скриншота» возник вопрос, а можно ли сделать процесс создания скриншота без поддержки ВК и универсальным по отношению к платформе…

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
1. TrinitronOTV 03.10.11 11:26 Сейчас в теме
хорошая вещь - пригодиться
2. Andry.Boris 55 03.10.11 13:09 Сейчас в теме
(1) TrinitronOTV,
Не забываем ставить + мне очень приятно если пригодиться...
3. Misanets 336 03.10.11 16:35 Сейчас в теме
Из описания к публикации:

"из любой платформы 1С даем команду выполнить внешнюю команду с параметрами…"

Пример кода можно?
6. Misanets 336 05.10.11 16:32 Сейчас в теме
Ответ то будет на вопрос (3)?
10. Andry.Boris 55 06.10.11 14:35 Сейчас в теме
(3) Пример для 7.7 добавлен... см. статью.
4. Ichigo 04.10.11 01:41 Сейчас в теме
Прикольная и главное актуальная вещь! Спасибо.
5. Andry.Boris 55 04.10.11 12:12 Сейчас в теме
Спасибо.
Функционал можно развить, кому что нужно пишите...
допишем...
7. romansun 189 05.10.11 16:49 Сейчас в теме
(5)

Сделайте копирование скрина в буфер обмена. В 75% случаев это именно то, что нужно - вставить в письмо, в скайп, в документацию и пр.

я сам и заказчик на постоянной основе пользуемся getgreenshot.org
39. imax26 67 29.04.17 06:12 Сейчас в теме
(7)
Копирование в буфер обмена делается - сюрприз - клавишей PrintScreen
8. Анатолий50 05.10.11 18:14 Сейчас в теме
Не видел, но одобряю, идея очень хорошая. Еще бы и отправляла сама, или хотя бы собирала сведения, в каком месте остановилась программа. Поставил +
11. Andry.Boris 55 06.10.11 14:36 Сейчас в теме
(8) В следующей редакции добавлю отправку по почте через SSL...
для 7.7 думаю это тоже особо актуально...
9. oav 06.10.11 09:12 Сейчас в теме
Вещь хорошая. Надо попробовать... так ли все удобно???
12. Misanets 336 06.10.11 18:09 Сейчас в теме
Что-то не получается никак в 8.2.

Процедура ВыполнитьНажатие(Кнопка)
ПолноеИмяФайла = "C:\Скрин_"+ТекущаяДата();
Команда = "C:\ScreenShot.exe "+"path="""+ПолноеИмяФайла+""""+" & type=""bmp""";
ЗапуститьПриложение(Команда);
КонецПроцедуры

В результате вроде должен появиться файл скрина на диске С:\ (там же и эксешник лежит), но нет, ничего нет.
В чем беда?
13. pumbaE 628 06.10.11 18:19 Сейчас в теме
(12) Misanets, а просто так срабатывает? Не всегда ведь можно писать в корень диска С:, например в windows 7 нельзя по умолчанию.
15. Andry.Boris 55 06.10.11 18:26 Сейчас в теме
(13) Поэтому и использовал строку
>> Команда = КаталогИБ()+"ScreenShot.exe "+"path="""+ПолноеИмяФайла+""""+" & type=""bmp""";
Если из командной строки запустить:
100% работает...
ScreenShot.exe path="C:\Program Files\screenshot"&type="png"
Дальше транслируйте команду в формате 1С
14. Andry.Boris 55 06.10.11 18:22 Сейчас в теме
(12) Возможно в єтой строке проблема
>> ПолноеИмяФайла = "C:\Скрин_"+ТекущаяДата();
Формируется имя с большим содержанием точек.
Воспользуйтесь моим методом, где формируется имя без точек...
и отрегулируйте количество кавычек:
>> Команда = "C:\ScreenShot.exe "+"path="""+ПолноеИмяФайла+"""+" & type=""bmp""";
16. Misanets 336 07.10.11 15:53 Сейчас в теме
Andry.Boris пишет:

(12) Возможно в єтой строке проблема

>> ПолноеИмяФайла = "C:\Скрин_"+ТекущаяДата();

Формируется имя с большим содержанием точек.

Воспользуйтесь моим методом, где формируется имя без точек...

и отрегулируйте количество кавычек:

>> Команда = "C:\ScreenShot.exe "+"path="""+ПолноеИмяФайла+"""+" & type=""bmp""";
Показать

Спасибо, действительно проблема видимо в точках входящих в состав даты.
Решил файл хранить в темпе под простым именем типа
КаталогВременныхФайлов() + "screen"
и от туда брать его. Каждый раз файл будут перезаписан, если он существует.
17. gaglo 10.10.11 11:39 Сейчас в теме
Пробороздив просторы гугла, значит? Так рекомендую произведение неподражаемого Нира Софера -
NirCmd v2.65 ! Просто и быстро позволяет сделать из командной строки около сотни самых разных вещей; среди них и создание скриншота: в файл или в буфер обмена, возможно с задержкой, поддерживаются разные форматы графического файла, и если несколько мониторов подключено, то можно по желанию получать скриншоты со всех доступных или только с главного...
ЗЫ. А Microsoft Net Framework всех версий отсутствует приблизительно на 120 из 130 компьютеров нашей фирмы, потому, что он там никому не нужен...
20. Andry.Boris 55 10.10.11 14:04 Сейчас в теме
(17) gaglo,
Я и не претендую на первенство изобретения велосипеда...
Это мой взгляд на вопрос, можете пользоваться любыми обработками как Вам желается...
25. gaglo 11.10.11 15:38 Сейчас в теме
(20) Мне жаль (почему-то), что моё заявление вызвало именно такую реакцию.
Светлая сторона: Вы сами соорудили стороннюю утилиту под свои цели. И она работает. Похвально!
Тёмная сторона: Вы не нашли готовой утилиты, хотя могли и найти... (Непохвально?)
Мне лично не нравится в Ваших ответах лейтмотив "можете пользоваться любыми обработками как Вам желается...", "Пользоваться или нет Вам решать". Похоже, Вы все-таки обиделись даже на не самую резкую критику ;-[
Однако подождем следующую (см.11) редакцию велосипеда.
18. CheBurator 3399 10.10.11 12:24 Сейчас в теме
мегакруто:
а можно ли сделать процесс создания скриншота без поддержки ВК и универсальным по отношению к платформам 7.7 и 8.Х… Оказалось можно, но для этого нужно сделать скриншот сторонней системной утилитой

- суперподход! вк - нам не нравятся, сделаем стороннюю утилиту...
..мдя...
.
для 7.7 - с использованием сторонней утилиты - то есть ВК: http://infostart.ru/public/14659/
+ у абадонны в миракле есть такой функционал.
+ к этому реально можно обойтись безо всяких ВК и сторонних утилит - принтскрин клавишу еще нгикто не отменял...
21. Andry.Boris 55 10.10.11 15:12 Сейчас в теме
(18) CheBurator,
ВК - сидит в памяти, это и есть то что может не нравиться,
причем зачем держать ВК если Вам нужна функция из неё только при возникновении
ситуации... К тому же избыток ВК в работающей может приводить к сбоям...

Про сторонние разработки те что Вы описали я в курсе,...

К тому же данная вещь на любителя...

Утилита универсальна, запустить всегда можно и не сложно...
Пользоваться или нет Вам решать, вариантов решения вопроса можно разложить множество...

Спасибо за комментарий.
19. alexanderal 10.10.11 13:29 Сейчас в теме
а мне понравилось.... всяко с удаленщиками проще работать... эффект одной кнопки
22. CheBurator 3399 10.10.11 15:53 Сейчас в теме
ВК загружать имеет смысл те, которые во время работы используются регулярно...
загруженная ВК - будет работать... по идее... (?)
а вот запуск сторонней утилыта запросто может обломаться из-за политик безопасности - раз, из-за нехватки зависимостей/софта - два (впрочем как и ВК ;0-)
.
поэтому я не люблю ВК/утилты в виде комбайнов... - если мне что-то надо - то ради одной возможности тянуть огромноый хвост невостребованных - бяка.. ;-)
.
так что, при существенном хотении задачу скриншота экрана можно полностью решить встроенными штатными средствами 1С/виндов... или с минимальным привлечением сторонних ВК/утилит
23. pt_olga 62 10.10.11 21:58 Сейчас в теме
мы своих пользователей научили пользоваться Снагитом... на свою голову)))
удобней программки по скриншотам не видела
24. Andry.Boris 55 11.10.11 12:35 Сейчас в теме
(23) pt_olga,
Как альтернатива Снагита можете посмотреть в сторону Gadwin PrintScreen - умеет делать
много и размер очень мал... сидит в трее, реагирует на кнопочку "PrintScreen"
может и отправить по электронке... Но статья не о том...

Не каждый пользователь сообразит, что нужно нажать PrintScreen и сохранить ошибку для
админа... а в данном разрезе можно автоматизировать процесс отлова ошибок и пользователю будет
незаметно...
26. Nikola23 415 14.10.11 00:52 Сейчас в теме
Думаю, что будет сильно полезно при работе с множеством БД (соотв. с множеством пользователей).
Иногда из пользователей и пытками не вытянешь чо там за ошибка произошла, когда, при каких условиях.
А тут можно будет видеть не только работу с БД, но и попутно запущенные приложения.
27. warenic 104 17.10.11 17:44 Сейчас в теме
Почитал описание, глянул на комменты... Зачем все эти сложности? Alt+PrintScreen - копируем снимок экрана в буфер. Теперь его можно вставить хоть в Paint, хоть в Word. Да хоть куда! И никаких ВК и изменений в коде...
33. MishanyaMeepo 22.08.14 15:38 Сейчас в теме
(27) warenic, а если требуется автоматически при ошибках делать скрин и отправлять админам, без участия пользователя? А если нужно сделать большое количество снимков? Всяко легче написать обработку, а не нажимать много раз PrintScreen и вставлять в Paint.
28. Leannet 19.10.11 14:17 Сейчас в теме
29. milkers 2344 19.07.12 15:19 Сейчас в теме
Я бы с удовольствием воспользовался этим экзешником, если б смог проверить его на отсутствие закладок... Нужен исходный код.
30. NSerget 5 25.11.12 15:48 Сейчас в теме
Отличная вещь.

У себя немного поправил:

//// нужно дождаться появления файла
//Счетчик = 10000;
//Пока Счетчик>0 Цикл
// // Ждем отработки ScreenShot.exe
// Счетчик = Счетчик - 1;
//КонецЦикла;

Счетчик = 1000000;
Пока НЕ ПроверитьСуществованиеФайла(КаталогВременныхФайлов() + ИмяФайлаСкринфота + ".jpg") Цикл
Счетчик = Счетчик - 1;
Если Счетчик = 0 Тогда
Возврат Ложь; // Скриншот не был создан
КонецЕсли;
КонецЦикла;
31. EastGuy 53 12.08.13 11:11 Сейчас в теме
А вовремя открытого модального окна работает, можно сделать скрин?
32. the1 388 12.08.13 11:15 Сейчас в теме
полагаю, можно копнуть в сторону SendKeys + PrintScreen, а там уже вызывать или почту, или Пэйнт, или черта лысого. Но все равно плюс!
34. MishanyaMeepo 22.08.14 15:42 Сейчас в теме
И еще насчет задержки/ожидания/delay:
Делать цикл с счетчиком неправильно, т.к. задержка предполагает приостановку процесса выполнения программы.
Поэтому можно сделать такую функцию:
//Установить задержку
Procedure delay(t) export 
	
	cmdLine= "ping -n 1 -w " + Формат(1000*t, "ЧГ=0")+" 1.0.0.0";
	
	WshShell = Новый COMОбъект("WScript.Shell");
	
	WshShell.Run(cmdLine, 0, -1);
	
EndProcedure
Показать


35. stifano 3 27.02.15 19:49 Сейчас в теме
Вещь!!! Очень пригодилась. Спасибо.
36. Andry.Boris 55 28.02.15 17:49 Сейчас в теме
(35) stifano, На здоровья если помогло и не жалко + подкиньте мне пригодиться... ;)
37. DrZombi 28 07.04.15 14:07 Сейчас в теме
А где для 1С 8.2 УФ и Вэб клиента?
Где использование технологии Нативел:)
38. unichkin 1199 20.04.16 22:11 Сейчас в теме
(37) DrZombi, какой native :) Это же не ВК))) И в УФ работает прекрасно. Из винды ессно. Автору зачет)
ох, вот это я археолог))
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Ведущий программист 1С
Санкт-Петербург
зарплата от 130 000 руб.
Полный день

Программист 1С
Москва
зарплата от 130 000 руб. до 200 000 руб.
Полный день

Бизнес-архитектор 1С, ведущий консультант
Санкт-Петербург
Полный день

Руководитель проектов 1С
Санкт-Петербург
Полный день