Отправка скриншота на email
Здравствуйте. Помогите, пожалуйста, написать батник. Не обессудьте, если задача слишком сложна или же проста, я батниками пока умею лишь копировать ><
Суть задачи: Есть папка со скриншотами, например, C:\Dropbox\Public\img\ В ней время от времени (после нажатия PrintScreen) появляются картинки. Их имена имеют одинаковое начало, например, Capture и одинаковый формат: .JPEG. Единственное их отличие - нумерация. Соответственно, файлы выглядят следующим образом: Capture1.JPEG, Capture2.JPEG, Capture3.JPEG и т.д. При появлении новых файлов должен запускаться батник, лежащий в любом месте, например, в папке с этими файлами. Его автоматически запустит программа (Auto Screenshot Maker), которая делает скриншоты после того, как сохранит скриншот. В самом батнике адрес к папке должен преобразовываться из C:\Dropbox\Public\img\ в http://dl.dropbox.com/u/1033383/img/ Дальше самое сложное, вроде бы, что я вообще не понимаю, как сделать: батник должен определять последний файл в папке (то есть файл с наибольшим числом после Capture), добавлять его к адресу, чтобы получилось, например, http://dl.dropbox.com/u/1033383/img/Capture1.JPEG и отправлять его на почтовый ящик, например, example@example.com Желательно, чтоб функционал этого батника был в .exe, а-то я что-то сомневаюсь, что программа запустит иные форматы. Помогите, пожалуйста, я очень нуждаюсь в вашей помощи! Заранее безмерно благодарен! |
Вложений: 1
Сам скрипт:
Код:
@Echo Off Код:
# Директория со скриншотами Во вложении к этому посту - уже откомпилированный в exe скрипт со всеми нужными вложениями и конфигурационный файл, если захотите сами откомпилировать - используйте этот конвертер, и не забудьте вложить blat.exe, blat.lib и blat.dll. |
Вау! Не ожидал такой быстрой реакции! Спасибо огромное!
Потестил... почему-то не отправляет. Ни с моего компа, ни с ещё одного. Все данные введены верно, проверил несколько раз. В чём может быть проблема, не подскажете? Как оно происходит: запускаю файл, он распаковывает блат, видимо, отправляет, файлы блат снова пропадают. Вероятно, больше ничего и не должно быть. Но во входящих как ничего не было, так и нет. Оба почтовые ящики - гугловские. Сервером указан smtp.gmail.com. В настройках гугла у обоих ящиков разрешены IMAP и POP. Также на всякий случай выключены фаерволы. p.s. также была отключена функция smtp на уровне провайдера у обоих компьютеров, включил в личном кабинете и переподключился к интернету - безрезультатно. |
Проверьте на всякий случай, указав отправляющим ящиком именно тот, тестовый, на mail.ru, с паролем test123. С gmail я не проверял, подозреваю, что там надо принудительно порт указывать.
У меня локально всё отработало, вот: Я не могу воспроизвести вашу проблему с неотправкой письма (пробовал на xp sp3 и winserver 2008), соответственно, и подсказать, как ее решить, тоже не могу. |
Anonymоus, да, похоже, нужно принудительно порт указывать, в гугл-инструкциях указано (POP, IMAP).
С вашими данными всё замечательно отправляется. В принципе, так как всё отправляется, проблему можно считать решённой. Но если вы всё-таки подскажете, как отправить гугловской почтой, будет совсем здорово, ибо компьютеров у меня несколько (3: мать, отец и сестра, мой не в счёт) и было бы здорово отличать не только по скриншоту, с которого приходит письмо, а почта у всех гугловская. |
andrew_gurylyov@vk, после непродолжительных поисков в интернете выяснилось, что логин в Gmail производится исключительно через SSL, чего blat "из коробки" не умеет делать. Для этого нужна дополнительная программа Stunnel. Вам проще будет сделать несколько копий config.ini с разными не-gmail отправляющими ящиками (получателем может быть и gmail).
Кстати, я заметил ошибку - замените в config.ini строку Set ID=1033383 на ID=1033383, без Set UPD: Если всё же захотите использовать gmail, вот тут есть статья о настройке stunnel http://slaviksg.narod.ru/texts/smtpgmail.htm Скрипт в таком случае, придется немножко подправить (добавить -port 465 к аргументам blat) и откомпилировать заново. |
Может быть, вы подскажете, как через Stunnel сделать? По идее, на эти компьютеры сколько угодно чего угодно ставить можно =)
|
Вот же, снизу шестого сообщения ссылка. Я только что сам нашел эту страницу в поисковике, так что сомневаюсь, что обьясню вам лучше, чем там описано.
|
Вложений: 1
И снова не получается(
Я даже завёл новую почту на имя Blat Stunnel. Как вы посоветовали: Код:
blat.exe -port 465 -u %Login% -pw %Password% -subject "Screenshot" -body "http://dl.dropbox.com/u/%ID%/img/%%F " -to %EMail% -f %Login% -attach "%WorkDir%\%%F">nul Код:
blat.exe -serverSMTP 127.0.0.1 -port 465 -try 1 -u %Login% -pw %Password% -subject "Screenshot" -body "http://dl.dropbox.com/u/%ID%/img/%%F " -to %EMail% -f %Login% -attach "%WorkDir%\%%F">nul Код:
blat.exe -serverSMTP 127.0.0.1 -portSMTP 465 -try 1 -u %Login% -pw %Password% -subject "Screenshot" -body "http://dl.dropbox.com/u/%ID%/img/%%F " -to %EMail% -f %Login% -attach "%WorkDir%\%%F">nul Код:
blat.exe -serverSMTP 127.0.0.1 -portSMTP 1099 -u %Login% -pw %Password% -subject "Screenshot" -body "http://dl.dropbox.com/u/%ID%/img/%%F " -to %EMail% -f %Login% -attach "%WorkDir%\%%F">nul |
andrew_gurylyov@vk, если честно, не хочется возиться с этим stunnel - его устанавливать нужно ещё, запускать как службу. У вас jabber-аккаунт есть? Могу помочь с отправкой уведомлений на любой jabber-аккаунт, только не на серверах google. Jabber.ru например, или яндексовский.
Ещё одна из причин, по которой могло не заработать - у вас в ini-файле логин записан, как Login=blatstunnel@mail.ru |
есть жаббер квипа. avenger-inkognito@qip.ru подойдёт?
|
andrew_gurylyov@vk, да, подойдет. Вам только что приходило сообщение с текстом "Тест"? Если да, то сейчас реализую скрипт, который будет слать уведомления.
|
Не приходило. Вероятно оттого, что был включен анти-спам. Отключил, можно попробовать снова.
|
Попробовал, а сейчас приходило? У меня на тестовый qip-аккаунт отправляет.
|
Нет, ничего нет. В настройках квипа всё разрешил, антиспам выключил.
jabber.bot! пришло) |
Попробуйте в контакты добавить jabber.bot@qip.ru
Только что еще раз попробовал вам отправить, на мой тестовый jid (только что завел на квипе) приходит, но тут может быть проблема ещё в разных клиентах, у меня Psi+, и в опциях отключено "не принимать сообщения от неавторизованных контактов" |
Чуть выше написал. Пришло)
Тема: Уведомление Проверка связи |
Последняя проверка, только что вам ссылка приходила?
|
Приходила. Файла, правда, по тому адресу не было, но ссылка пришла.
|
Тогда держите готовый скрипт. Файла естественно не было, я имитировал его наличие. Сообщения в джаббер отправляются с помощью вот этого ruby-скрипта, спасибо его автору.
Скачать уже скомпилированный скрипт вместе с интерпретатором ruby можно отсюда http://rghost.ru/36655943 Когда я тестировал отправку, иногда бывало, зависало секунд на 30. С нормальными серверами, не qip.ru обычно такого не происходит. Вот скрипт, если захотите сами скомилировать: Оба в кодировке UTF-8, для поддержки кириллицы в джаббере. |
Прошу прощения, вынужден был вчера очень быстро пропасть, не успел предупредить.
Оно как-то через раз отправляет. Иногда включаешь и через пару секунд или меньше закрывается, отправив. А иногда включаешь и висит пока не вырубишь или где-то с минуту, но не отправлет. Попытался я сам скомпилировать... Вовсе отправляется. Файлы в utf-8 (без BOM). Блат уже не добавляю (хотя и добавлять пробовал), раз jabber теперь. Цель компиляции - сделать невидимый режим работы программы. В идеале ещё удалить из сообщения слово "Тема: ", но не могу врубиться, где оно вообще написано. |
Цитата:
Перекомпилировал для вас с режимом без видимого окна, тему убрал (она в файле настроек указана) http://rghost.ru/36662943 |
Попробовал через яндекс. Действительно быстро. Вот им тогда и буду пользоваться. Огромное спасибо, вы мне очень здорово помогли!
|
Время: 17:41. |
Время: 17:41.
© OSzone.net 2001-