Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Автоматическая отправка файлов на почтовый ящик (http://forum.oszone.net/showthread.php?t=337470)

shaman18 30-10-2018 20:15 2838480

Автоматическая отправка файлов на почтовый ящик
 
Всем Добрый вечер!
Подскажите пожалуйста, может у кого есть готовый батник для автоматической отправки файлов на почтовый ящик посредством windows ,,,
вроде всё просмотрел но нет на форуме именно этого, если есть не пинайте, просто подскажите
вот что то типа этого , но этот написан на VBA для Excel и не получается переделать чтобы работал, а вернее не силён сделать это

Скрытый текст
Dim o_Mess, v_Conf
v_Conf = "http://schemas.microsoft.com/cdo/configuration/"
Set o_Mess = CreateObject("CDO.Message")
With o_Mess
.To = "support@apple.com" 'куда отправляем
.From = "Alex <xxx@yandex.ru>" 'имя отправителя + Email
.Subject = "Subj" 'Тема письма
.TextBody = "BodyMail" 'Сообщение
.AddAttachment "C:\RemoveDrive.exe" 'Прикрепить файл
.TextBodyPart.Charset = "windows-1251" 'русская кодировка
With .Configuration.Fields
.Item(v_Conf & "sendusing") = 2 'без использования каталога Server Exchange
.Item(v_Conf & "smtpserver") = "smtp.yandex.ru" 'Адрес SMTP-сервера
.Item(v_Conf & "smtpauthenticate") = 1 'Тип авторизации
.Item(v_Conf & "sendusername") = "xxx" 'здесь имя пользователя без @
.Item(v_Conf & "sendpassword") = "pass" 'пароль
.Item(v_Conf & "smtpserverport") = 25 'порт (альтернативный - 465)
.Item(v_Conf & "smtpusessl") = False 'использовать ли шифрованое подключение SSL
.Item(v_Conf & "smtpconnectiontimeout") = 60 'Время до завершения повторных попыток подключения
.Update
End With
.send
End With
Set o_Mess = Nothing

Iska 30-10-2018 20:44 2838493

shaman18, с учётом реалий нынешнего дня — WSH/PowerShell. Если, разумеется, под:
Цитата:

Цитата shaman18
отправка файлов на почтовый ящик »

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

Казбек 30-10-2018 20:55 2838496

shaman18,

Blat
Blat run from a Batch file

Iska 30-10-2018 21:00 2838497

Казбек, сейчас сложно найти почтовый сервер, с которым бы blat работало бы без установки и настройки stunnel. Посему теряется весь смысл в использовании blat.

shaman18 30-10-2018 21:00 2838498

Цитата:

Цитата Iska
подразумевается электронное письмо с прикреплёнными к нему файлами, которые отправляются из Вашего почтового ящика кому-то. »

есть определенный файл который будет отправляться постоянно на другую почту ( ну естественно с моей почты )
ну грубо, есть папка в ней файл ( который меняется только датой ) и нужно чтобы автоматом он отправился на ящик друга
ну так и получается создается электронное письмо с прикрепленным файлом
ну и чтобы работало на Windows 7, 10, Server 2008-2017

Вот еще кое что нашел но опять не то , как то можно сделать из этого что надо? Написана на VBA для Excel
Для регистрации jmail.dll нужно его скопировать в обе папки Windows\system32 и Windows\syswow64. Затем войти в консоль с повышенными правами и ввести команду:
regsvr32 "%windir%\syswow64\jmail.dll" Это я так понял для jmail почты

Скрытый текст
Function Send_Email(Adresat$, AdrHidden$, Subj$, BodyMail$, Attach) As Boolean
On Error GoTo ErrH
Dim att
Dim Jmail

Set Jmail = CreateObject("JMail.Message")
With Jmail
.Charset = "windows-1251" ' кодировка
.AddRecipient Adresat ' адрес получателя
.From = "login@yandex.ru" ' адрес отправителя
.Body = BodyMail ' перевод на новую строку - & vbCrLf
.Subject = Subj ' тема письма
.EnableCharsetTranslation = False ' так надо...
If IsArray(Attach) Then
For Each att In Attach
.AddAttachment att 'Прикрепить файл
Next
End If
.MailServerUserName = "login" ' логин
.MailServerPassword = "pasword" ' пароль
.Send ("smtp.yandex.ru") ' лети!...
End With
Set Jmail = Nothing

Send_Email = (Err = 0)
Err.Clear

'MsgBox "Сообщение отправлено адресатам: " & UBound(Split(AdrHidden, ";")) + 2
Exit Function
ErrH:
Debug.Print Err.Description
Resume Next
End Function

Iska 30-10-2018 21:42 2838504

Цитата:

Цитата shaman18
есть определенный файл который будет отправляться постоянно на другую почту ( ну естественно с моей почты )
ну грубо, есть папка в ней файл ( который меняется только датой ) и нужно чтобы автоматом он отправился на ящик друга
ну так и получается создается электронное письмо с прикрепленным файлом
ну и чтобы работало на Windows 7, 10, Server 2008-2017 »

shaman18, ну, например.

P.S. Может потребоваться установка библиотеки CDO.

P.P.S. Для отправки через GMail дополнительно потребуется разрешить доступ: Как разрешить небезопасным приложениям доступ к аккаунту - Cправка - Аккаунт Google.

shaman18 30-10-2018 21:53 2838506

Цитата:

Цитата Iska
P.S. Может потребоваться установка библиотеки CDO.
P.P.S. Для отправки через GMail дополнительно потребуется разрешить доступ: Как разрешить небезопасным приложениям доступ к аккаунту - Cправка - Аккаунт Google. »

Спасибо, сейчас буду пробовать, мне в основном на mail.ru

библиотеки CDO это откуда взять?
и как правильно указать путь к файлу? подскажите еще, p.s не увидел вначале сейчас разберусь

не получается, не срабатывает

Iska 30-10-2018 22:03 2838511

Цитата:

Цитата shaman18
библиотеки CDO это откуда взять? »

Например, на сайте Microsoft: Download Collaboration Data Objects, version 1.2.1 from Official Microsoft Download Center. Сначала проверьте работу скрипта без установки библиотеки по ссылке (поскольку она уже может быть установлена и зарегистрирована).

Цитата:

Цитата shaman18
и как правильно указать путь к файлу? »

Код:

strSourceFile = "C:\Мои проекты\0135\Sample.txt"

shaman18 30-10-2018 22:06 2838512

E:\Винда>With WScript.CreateObject("Scripting.FileSystemObject")
"With" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Непредвиденное появление: Then.

E:\Винда> IF .FileExists(strSourceFile) Then

и расширения файлов это rar, zip, будет а также .dt
тут вижу .txt может поэтому не срабатывает
вот так прописано


Код:

strSourceFile = "d:\TORRENTS\Исправление шрифтов\Новая папка\themify-icons-font.zip"

Iska 30-10-2018 22:15 2838515

Цитата:

Цитата shaman18
E:\Винда>With WScript.CreateObject("Scripting.FileSystemObject")
"With" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Непредвиденное появление: Then.
E:\Винда> IF .FileExists(strSourceFile) Then »

Это скрипт WSH. Сохраните код в файл с расширением .vbs.

Цитата:

Цитата shaman18
и расширения файлов это rar, zip, будет а также .dt
тут вижу .txt может поэтому не срабатывает »

Указывайте вместо «C:\Мои проекты\0135\Sample.txt» полный путь к Вашему файлу. Если будет несколько файлов — перечислите здесь их полные пути, я адаптирую код.

shaman18 30-10-2018 22:21 2838516

Цитата:

Цитата Iska
Цитата shaman18:
E:\Винда>With WScript.CreateObject("Scripting.FileSystemObject")
"With" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Непредвиденное появление: Then.
E:\Винда> IF .FileExists(strSourceFile) Then »
Это скрипт WSH. Сохраните код в файл с расширением .vbs.
Цитата shaman18:
и расширения файлов это rar, zip, будет а также .dt
тут вижу .txt может поэтому не срабатывает »
Указывайте вместо «C:\Мои проекты\0135\Sample.txt» полный путь к Вашему файлу. Если будет несколько файлов — перечислите здесь их полные пути, я адаптирую код. »

Эту ошибку увидел с помощью проги Dr.Batcher
по поводу пути файла вроде полностью указан strSourceFile = "d:\TORRENTS\Исправление шрифтов\Новая папка\themify-icons-font.zip"

Сильно не ругайте это как сделать Это скрипт WSH. Сохраните код в файл с расширением .vbs.
p.s блин торможу, сохранил в .vbs но тогда запускаю и тишина, ни ошибок ничего
и походу даже незапускается

Iska 30-10-2018 22:26 2838518

Цитата:

Цитата shaman18
Сильно не ругайте это как сделать Это скрипт WSH. Сохраните код в файл с расширением .vbs. »

Выделить код скрипта на форуме. Переключить язык ввода на русский. Скопировать выделенный код в буфер обмена. Нажать Win-R, ввести notepad.exe, нажать Enter. В открывшееся окно Блокнота вставить из буфера обмена ранее скопированный код. Сохранить содержимое Блокнота в файл под потребным именем с расширением .vbs в потребный каталог.

shaman18 30-10-2018 22:38 2838522

ой блин, всё давно работает почту тупо не проверил, но так быстро всё происходит что даже незаметно

Спасибо тебе Большое за помощь!
Очень помог, сейчас попробую большие файлы,
и еще через планировщик можно же будет запускать это задание?

Iska 30-10-2018 23:12 2838530

Цитата:

Цитата shaman18
сейчас попробую большие файлы, »

Имейте в виду, что на большинстве бесплатных почтовых серверов тупо стоит ограничение на максимальный объём вложений.

Цитата:

Цитата shaman18
через планировщик можно же будет запускать это задание? »

Разумеется. "%SystemRoot%\System32\wscript.exe" в качестве исполняемого файла и путь к сохранённому файлу скрипта как аргумент.

shaman18 30-10-2018 23:17 2838532

Цитата:

Цитата Iska
Имейте в виду, что на большинстве бесплатных почтовых серверов тупо стоит ограничение на максимальный объём вложений. »

попробовал сейчас 270 метров , пока жду, вот плохо что не видно что происходит и лога нет ушел файл или нет,,
и проверь пожалуйста личку

Цитата:

Цитата Iska
Разумеется. "%SystemRoot%\System32\wscript.exe" в качестве исполняемого файла и путь к сохранённому файлу скрипта как аргумент. »

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

p.s. по ходу большие файлы он не отправляет , до сих пор жду, на почте нет может .dt файлы не хочет?

shaman18 30-10-2018 23:44 2838538

Вложений: 1
p.s.2 ну вот попробовал в rar. отправить файл и выскочила ошибка, можно как то подправить это дело??

Iska 30-10-2018 23:53 2838542

Полагаю, что нет. Ошибка при попытке отправки. Либо ограничение сервера, либо сама библтотека не может отправить такой большой файл. Попробуйте аккаунты на yandex, на google.

В крайнем случае с такими размерами можете попробовать пользовать простое копирование на Яндекс.Диск посредством WebDAV.

shaman18 30-10-2018 23:58 2838545

Цитата:

Цитата Iska
Либо ограничение сервера, либо сама библтотека не может отправить такой большой файл »

А как узнать библиотека это не дает или сервер, хотя тупо если закинуть на почту то всё отправляет

Iska 31-10-2018 00:08 2838548

Цитата:

Цитата shaman18
хотя тупо если закинуть на почту то всё отправляет »

Да ну? Разве Mail.RU при создании письма с таким большим файлом не помещает его в своё облако, прикладывая к письму ссылку, в результате чего конечный получатель видит «…Вы можете загрузить данный файл по ссылке из облака до такой-то даты»?

shaman18 31-10-2018 00:08 2838549

Цитата:

Цитата Iska
простое копирование на Яндекс.Диск посредством WebDAV. »

за эту подсказку Большое Спасибо!

Цитата:

Цитата Iska
Да ну? Разве Mail.RU при создании письма с таким большим файлом не помещает его в своё облако, прикладывая к письму ссылку, в результате чего конечный получатель видит «…Вы можете загрузить данный файл по ссылке из облака до такой-то даты»? »

Нет у меня такого, тупо закидываю файл на почту при создании , и получатель не видит такой надписи , сейчас еще раз попробую сам себе закинуть посредством почты, почтовики на mail.ru


p.s 2 Да ты был прав никогда внимания просто не обращал 152 МБ Скачать (ссылка доступна до 30 ноября 2018, 0:16)


Время: 15:20.

Время: 15:20.
© OSzone.net 2001-