Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - создание скриншота и его моментальная отправка на почтовый ящик

Ответить
Настройки темы
CMD/BAT - создание скриншота и его моментальная отправка на почтовый ящик

Старожил


Сообщения: 292
Благодарности: 0


Конфигурация

Профиль | Отправить PM | Цитировать


Подскажите, как создать .bat (не PowerShell скрипт!!! на моей системе его нет)
чтобы он делал скриншоты когда сработает планировщик задач и отправлял их на почту. (моя почта@моя почту.ру)
т.е. батник будет запускаться через планировщик задач . Время в планировщике наступило и он заскриншотил и отправил мне на почту
Все решения что нашел в инете или платные или не рабочие.

Отправлено: 16:43, 30-08-2019

 

Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6491
Благодарности: 1465

Профиль | Отправить PM | Цитировать


.\screen.ps1

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)


Отправлено: 14:02, 02-09-2019 | #21



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Старожил


Сообщения: 292
Благодарности: 0

Профиль | Отправить PM | Цитировать


DJ Mogarych, теперь целый ряд выполз))

PS C:\Users\trader\desktop> .\screen.ps1
Unable to find type [System.Windows.Forms.Screen].
At C:\Users\trader\desktop\screen.ps1:5 char:16
+ $oRectangle = ([System.Windows.Forms.Screen]::AllScreens)[0].Bounds
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (System.Windows.Forms.Screen:TypeNam
e) [], RuntimeException
+ FullyQualifiedErrorId : TypeNotFound

Exception calling ".ctor" with "2" argument(s): "Value cannot be null.
Parameter name: stream"
At C:\Users\trader\desktop\screen.ps1:6 char:1
+ $oBitmap = [System.Drawing.Bitmap]::new($oRectangle.Width, $oRecta ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: ( [], MethodInvocationException
+ FullyQualifiedErrorId : ArgumentNullException

Exception calling "FromImage" with "1" argument(s): "Value cannot be null.
Parameter name: image"
At C:\Users\trader\desktop\screen.ps1:7 char:1
+ $oGraphics = [System.Drawing.Graphics]::FromImage($oBitmap)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: ( [], MethodInvocationException
+ FullyQualifiedErrorId : ArgumentNullException

You cannot call a method on a null-valued expression.
At C:\Users\trader\desktop\screen.ps1:8 char:1
+ $oGraphics.CopyFromScreen($oRectangle.Location, [System.Drawing.Point ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: ( [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull

You cannot call a method on a null-valued expression.
At C:\Users\trader\desktop\screen.ps1:10 char:1
+ $oBitmap.Save($oMemoryStream, [System.Drawing.Imaging.ImageFormat]::P ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: ( [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull

Exception calling "Send" with "1" argument(s): "Bad sequence of commands. The se
rver response was: 5.5.4 Error: send AUTH command first."
At C:\Users\trader\desktop\screen.ps1:32 char:1
+ $oSmtpClient.Send($oMailMessage)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: ( [], MethodInvocationException
+ FullyQualifiedErrorId : SmtpException

You cannot call a method on a null-valued expression.
At C:\Users\trader\desktop\screen.ps1:36 char:1
+ $oGraphics.Dispose()
+ ~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: ( [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull

You cannot call a method on a null-valued expression.
At C:\Users\trader\desktop\screen.ps1:37 char:1
+ $oBitmap.Dispose()
+ ~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: ( [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull

PS C:\Users\trader\desktop>

Отправлено: 15:01, 02-09-2019 | #22


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


kontox, моя вина. Добавьте второй строкой:
Код: Выделить весь код
[Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms') | Out-Null
ISE подгружает её автоматически для себя. Я помнил, что, при работе в чистой консоли, System.Windows.Forms надо подгружать самостоятельно, но с какого-то перепуга решил, что уже сделал это (попутал с наличествующей в коде System.Drawing).

Последний раз редактировалось Iska, 03-09-2019 в 01:16. Причина: Устранение неоднозначности.

Это сообщение посчитали полезным следующие участники:

Отправлено: 17:25, 02-09-2019 | #23


Старожил


Сообщения: 292
Благодарности: 0

Профиль | Отправить PM | Цитировать


Iska, я добавил, запустил

Exception calling "LoadWithPartialName" with "1" argument(s): "Could not load fi
le or assembly 'System.Windows.Forms, Culture=neutral, PublicKeyToken=null'. Ope
ration is not supported. (Exception from HRESULT: 0x80131515)"
At C:\Users\trader\desktop\screen.ps1:2 char:1
+ [Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms') | ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: ( [], MethodInvocationException
+ FullyQualifiedErrorId : FileLoadException

Unable to find type [System.Windows.Forms.Screen].
At C:\Users\trader\desktop\screen.ps1:5 char:16
+ $oRectangle = ([System.Windows.Forms.Screen]::AllScreens)[0].Bounds
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (System.Windows.Forms.Screen:TypeNam
e) [], RuntimeException
+ FullyQualifiedErrorId : TypeNotFound

Exception calling ".ctor" with "2" argument(s): "Value cannot be null.
Parameter name: stream"
At C:\Users\trader\desktop\screen.ps1:6 char:1
+ $oBitmap = [System.Drawing.Bitmap]::new($oRectangle.Width, $oRecta ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: ( [], MethodInvocationException
+ FullyQualifiedErrorId : ArgumentNullException

Exception calling "FromImage" with "1" argument(s): "Value cannot be null.
Parameter name: image"
At C:\Users\trader\desktop\screen.ps1:7 char:1
+ $oGraphics = [System.Drawing.Graphics]::FromImage($oBitmap)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: ( [], MethodInvocationException
+ FullyQualifiedErrorId : ArgumentNullException

You cannot call a method on a null-valued expression.
At C:\Users\trader\desktop\screen.ps1:8 char:1
+ $oGraphics.CopyFromScreen($oRectangle.Location, [System.Drawing.Point ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: ( [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull

You cannot call a method on a null-valued expression.
At C:\Users\trader\desktop\screen.ps1:10 char:1
+ $oBitmap.Save($oMemoryStream, [System.Drawing.Imaging.ImageFormat]::P ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: ( [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull

Exception calling "Send" with "1" argument(s): "Bad sequence of commands. The se
rver response was: 5.5.4 Error: send AUTH command first."
At C:\Users\trader\desktop\screen.ps1:32 char:1
+ $oSmtpClient.Send($oMailMessage)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: ( [], MethodInvocationException
+ FullyQualifiedErrorId : SmtpException

You cannot call a method on a null-valued expression.
At C:\Users\trader\desktop\screen.ps1:36 char:1
+ $oGraphics.Dispose()
+ ~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: ( [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull

You cannot call a method on a null-valued expression.
At C:\Users\trader\desktop\screen.ps1:37 char:1
+ $oBitmap.Dispose()
+ ~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: ( [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull

Отправлено: 14:29, 04-09-2019 | #24


Аватара для YuS_2

Crazy


Contributor


Сообщения: 1171
Благодарности: 487

Профиль | Отправить PM | Цитировать


Цитата Iska:
Я помнил, что, при работе в чистой консоли, System.Windows.Forms надо подгружать самостоятельно»
Код: Выделить весь код
add-type -assembly system.windows.forms

-------
scio me nihil scire. Ѫ


Отправлено: 15:20, 04-09-2019 | #25


Старожил


Сообщения: 235
Благодарности: 8

Профиль | Отправить PM | Цитировать


Iska, здравствуйте. моя тема закрыта. скорее всего из за схожести с этой темы. потому пишу сюда.
не устанавливая никаких программ, запустил скрипт из сообщения #13. на почту пришло то что на скрине. .пнг не открывается(она как ссылка).
вопросы: какие программы еще надо установить? как настроить периодичность в полчаса?

Последний раз редактировалось v79italya, 18-10-2019 в 21:39.


Отправлено: 14:52, 07-10-2019 | #26


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата v79italya:
.пнг не открывается(она как ссылка). »
Открывается. Именно так выглядят вложения в web-интерфейсе мобильной версии почты Mail.RU.

Цитата v79italya:
на почту пришло то что на скрине. »
Всё правильно. Почему web-интерфейс мобильной версии почты Mail.RU неправильно понимает юникод в теле сообщения — не могу сказать. В обычном клиенте Mozilla Thunderbird — всё нормально:
Скрытый текст


Цитата v79italya:
какие программы еще надо установить? »
Коль работает — то никакие.

Цитата v79italya:
как настроить периодичность в полчаса? »
Попробуйте использовать Планировщик заданий.

Отправлено: 17:37, 07-10-2019 | #27


Старожил


Сообщения: 235
Благодарности: 8

Профиль | Отправить PM | Цитировать


Цитата Iska:
Открывается »
я скачал этот пнг. размер 1 кб. может, скриншот как то по другому делать?
Цитата Iska:
использовать Планировщик заданий »
лучше опять же макросом в Excel задам периодичность.

Iska, вопрос не по теме. Вы пишите в html, css, js, php?

Отправлено: 17:52, 07-10-2019 | #28


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата v79italya:
я скачал этот пнг. размер 1 кб. может, скриншот как то по другому делать? »
Хмм. Да, что-то я не подумал. 1 Кб явно маловато будет. Добавьте сразу после:
Код: Выделить весь код
$oBitmap.Save($oMemoryStream, [System.Drawing.Imaging.ImageFormat]::Png)
тупо запись в конкретный файл (путь Ваш будет, конечно):
Код: Выделить весь код
$oBitmap.Save('C:\Мои проекты\0279\0001.png')
и посмотрите, что там будет.

Цитата v79italya:
лучше опять же макросом в Excel задам периодичность. »
Не вижу в этом смысла.

Цитата v79italya:
Вы пишите в html, css »
Да.

Цитата v79italya:
js, php? »
Нет.

Отправлено: 18:28, 07-10-2019 | #29


Старожил


Сообщения: 235
Благодарности: 8

Профиль | Отправить PM | Цитировать


Цитата Iska:
что там будет »
пусто и на почту опять килобайтный .png пришел
так сделал и папку abcabc создал
HTML код: Выделить весь код
$oMemoryStream = [System.IO.MemoryStream]::new() $oBitmap.Save($oMemoryStream, [System.Drawing.Imaging.ImageFormat]::Png) $oBitmap.Save('C:\abcabc\0001.png')


Отправлено: 19:03, 07-10-2019 | #30



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - создание скриншота и его моментальная отправка на почтовый ящик

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Любой язык - [решено] Автоматическая отправка файлов на почтовый ящик shaman18 Скриптовые языки администрирования Windows 19 31-10-2018 00:08
CMD/BAT - Отправка screenshot на п/ящик. qqwwaass Скриптовые языки администрирования Windows 12 06-07-2013 16:04
CMD/BAT - [решено] Отправка скриншота на email andrew_gurylyov@vk Скриптовые языки администрирования Windows 22 23-02-2012 11:52
V. 2007 - Разграничение прав на почтовый ящик. bombording Microsoft Exchange Server 1 13-02-2012 07:43
Разное - Создание LOG'a системы и отправка его по почте. FreshMen85 Microsoft Windows 7 0 08-08-2011 10:08




 
Переход