![]() |
Отправка почты на VBS (нужна помощь в доработке скрипта)
Уважаемые, помогите еще с одним вопросом если не сложно.
Нашел тут случайно скриптик типа как я понял отправки почты. Сам я в этом не волоку, потому и прошу, посмотрите пож-ста его, Я так думаю что он не законченный или я непонял как им пользоваться... По крайней мере подставлял все данные и не работает... Вот сам скрипт - Код:
Option Explicit |
Вы лучше задачу объясните - что должен делать скрипт для ваших задач
|
Ivan Bardeen
...Ну я сейчас пользуюсь "Blat.exe", думаю что это альтернатива ему только на vbs, и хочу подробнее узнать как он работает и что в нем не так на данный момент. Благодарю... |
Цитата:
|
Ivan Bardeen
Использую "Blat.exe" в организации для отправки логов и отчетов (не большой сервак завел специально для этого), начальник ругается на этот "Blat.exe" (не доверяет таким утилитам в принципе, когда не видит исполняемый код), но выполняемые функции сервера важны и не хочется из-за не доверия начальника выключать сервак. Вот и ищу по сей день альтернативу "Blat.exe", а тут как раз весь код виден и думаю что начальник мой успокоится посмотрев код. Просто сам в скриптах не разбираюсь, вот и хотелось бы разъяснений как он работает, сам не допер пока... "Blat.exe" у меня в основном берет из файла отчетов (txt) и отправляет в html-формате (само тело письма в html) письмо. Адресатов берет тоже из файла (txt)... И любые указанные в параметрах "Blat.exe" вложения может отправлять... Заранее благодарю... |
Вложений: 1
Нашел вроде бы пишут что рабочий скрипт, но он не работает, сразу ругается...
В чем именно грабли не пойму... Код:
Set objMsg = CreateObject("CDO.Message") |
Вот, рабочий VBS скрипт, без аутентификации на smtp сервере(так проще)
Код:
Set objEmail = CreateObject("CDO.Message") |
Ivan Bardeen
Спасибо большое, очень помогли мне... |
НУ вот у меня с вашими скриптами ничего не получалось,выдавал ошибку 8004023,но в итоге просто пришлось поменять smtp порт,в итоге:
Set objMsg = CreateObject("CDO.Message") Set Config = CreateObject("CDO.Configuration") Set Config = objMsg.Configuration objMsg.From = "name@mail.ru" objMsg.To = "name@gmail.com" objMsg.Subject = "Test sending email from sсriрt" objMsg.Textbody = "This is a body of E-mail." Config("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 Config("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "94.100.177.1" 'это ip сервера smtp.mail.ru Config("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 2525 Config("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 Config("http://schemas.microsoft.com/cdo/configuration/sendusername") = "name@mail.ru" Config("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password" Config.Fields.Update objMsg.Send |
всем привет. Есть такой вот скрипт для отправки почты по маске с расширением pdf из определенной папки.
Мне нужно чтобы скрипт оправлял все файлы по маске которые появились за прошедший 1 час не только из одной папки, а и со всех его подпапок, в том числе и скрытых. Помогите разобраться как реализовать. DIM Mas() Set objShellApp = CreateObject("Shell.Application") FolderPath = "C:\FOLDER\" Set objFolderItems = objShellApp.NameSpace(FolderPath).Items() objFolderItems.Filter 64, "*.pdf" n = 0 For Each objFolderItem In objFolderItems n = n +1 ReDIM Preserve Mas(n) Mas(n)=objFolderItem.Path Next Set oMyMail = CreateObject("CDO.Message") oMyMail.BodyPart.Charset = "windows-1251" oMyMail.To = "admin@domain.local" oMyMail.From = "admin@domain.local" lft=LBound(Mas) rgt=UBound(Mas) For i=lft To rgt oMyMail.AddAttachment Mas(i) Next oMyMail.Subject = "нужные файлы во вложении" oMyMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 omyMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "10.1.0.155" omyMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 omyMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = "domain\user" omyMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "true" oMyMail.Configuration.Fields.Update oMyMail.Send |
Цитата:
|
нужно отследить файлы pdf которые появились за прошедший час времени и их отправить
|
alek2012, я тоже умею повторять, смотрите: кто или что будет отслеживать или определять этот час? По каким принципам?
|
можно по дате модификации каталога например каждый час проверять условием
If DatePart("yyyy",Now)=DatePart("yyyy",objDIR.DateLastModified) And _ DatePart("m",Now) =DatePart("m",objDIR.DateLastModified) And _ DatePart("d",Now) =DatePart("d",objDIR.DateLastModified) And _ DatePart("h",Now) =DatePart("h",objDIR.DateLastModified) Then Set oMyMail = CreateObject("CDO.Message") и в таком случае отправить файлы из каталога а если изменений не было то отправить что файлов нет например Else Set oMyMail = CreateObject("CDO.Message") ну и отправить что файлов нет главная суть вопроса как вытягивать файлы по маске из всех внутренних подкаталогов в том числе и скрытых |
Цитата:
Вы сразу начинаете решать, а я спрашиваю про принципы определения. Цитата:
|
приведите пожалуйста код
|
Создали/удалили. - ручками специально никто в этом каталоге создавать/удалять не будет, по этому мое условие по дате модификации подходит
|
Цитата:
Код:
Option Explicit Цитата:
|
Время: 23:43. |
Время: 23:43.
© OSzone.net 2001-