Помогите ! Нужен скрипт (желательно .vbs) который отправляет определенный файл по почте (желательно theBAT) на определенный адрес. Может есть у кого готовый ?
» ??? Скрипт vbs отправки файла по почте ???
vb-скриптом не пользуюсь...
Код:
function SendMail(sRecipientMail, sSubject, sMsgBody)
{
try
{
// create a session and log on -- username and password in profile
var refMsg = WScript.CreateObject("CDO.Message");
var refConf = WScript.CreateObject("CDO.Configuration");
// Setting configuration params
with(refConf.Fields)
{
Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "www.mysmtp.com";
Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2;
}
refConf.Fields.Update();
with(refMsg)
{
Configuration = refConf;
To = sRecipientMail;
From = "billgates@microsoft.com";
Subject = sSubject;
TextBody = sMsgBody;
}
refMsg.Send();
}
catch(e)
{
WScript.Echo("SendMail error: " + e.description);
WScript.Quit(1);
}
}
Код:
function SendMail(sRecipientMail, sSubject, sMsgBody)
{
try
{
// create a session and log on -- username and password in profile
var refMsg = WScript.CreateObject("CDO.Message");
var refConf = WScript.CreateObject("CDO.Configuration");
// Setting configuration params
with(refConf.Fields)
{
Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "www.mysmtp.com";
Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2;
}
refConf.Fields.Update();
with(refMsg)
{
Configuration = refConf;
To = sRecipientMail;
From = "billgates@microsoft.com";
Subject = sSubject;
TextBody = sMsgBody;
}
refMsg.Send();
}
catch(e)
{
WScript.Echo("SendMail error: " + e.description);
WScript.Quit(1);
}
}
distance спасибо . если можно еще чуточку помочь ...
1) Я так понимаю это все забить в нотепаде и запомнить с каким расширением ?
2)если я правильно понял это только функция - надо еще в начале написать процедуру в которой вызывается эта функция SendMail . Только я с синтаксисом незнаком - если не трудно можно ли набросать код этой процедуры
3)Что неправильно понял ? Например вот такие МОИ параметры :
sRecipientMail = "pupkin@mail.ru" - это почта куда шлю
sSubject = "пробное письмо" - это типа ТЕМА, да ?
sMsgBody = "С:/Отчет.xls " - сюда что можно вписать адрес файла ?
From = "mymail@mail.ru" вместо "billgates@microsoft.com"
непонятно только строка Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "www.mysmtp.com" - это что ? надо оставлять или менять ? И как это связано с моим smtp ? если например почта на mail.ru - то что писать то ???
1) Я так понимаю это все забить в нотепаде и запомнить с каким расширением ?
2)если я правильно понял это только функция - надо еще в начале написать процедуру в которой вызывается эта функция SendMail . Только я с синтаксисом незнаком - если не трудно можно ли набросать код этой процедуры
3)Что неправильно понял ? Например вот такие МОИ параметры :
sRecipientMail = "pupkin@mail.ru" - это почта куда шлю
sSubject = "пробное письмо" - это типа ТЕМА, да ?
sMsgBody = "С:/Отчет.xls " - сюда что можно вписать адрес файла ?
From = "mymail@mail.ru" вместо "billgates@microsoft.com"
непонятно только строка Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "www.mysmtp.com" - это что ? надо оставлять или менять ? И как это связано с моим smtp ? если например почта на mail.ru - то что писать то ???
wwwad
Цитата:
.js
Цитата:
Код:
var to = "pupkin@mail.ru";
var subj = "тема письма";
var text = "собственно тело письма";
SendMail(to, subj, text);
Цитата:
1) Я так понимаю это все забить в нотепаде и запомнить с каким расширением ?
.js
Цитата:
Только я с синтаксисом незнаком - если не трудно можно ли набросать код этой процедуры
Код:
var to = "pupkin@mail.ru";
var subj = "тема письма";
var text = "собственно тело письма";
SendMail(to, subj, text);
очень очень большое спасибо за внимание.
непонятен пункт // Setting configuration params непонятен не в том как он работает (ясно что не пойму пока - объяснять нестоит) непонятно мне что писать то ?
Например я пользуюсь theBatom и вот те реальные параметры которые требуются theBaty для отправки писем :
1) vadim422@yandex.ru
2) smtp.yandex.ru
3) "mypassword" для smtp
Их то где соответствие в скрипте ?
1) Smtp я так понял указывается через Item
Т.е. ведь это бред так определять Item?
Цитата:
А как? и оставлять ли мне второй пункт где он = 2 ???
2) Насчет vadim422@yandex.ru понятно - это пункт From
т.е. From="vadim422@yandex.ru"
3) А как насчет "mypassword" ???
--------------------------------------------------------
Возможно что я не получаю доконца понятный мне ответ изза того что сам невнятно задаю вопрос. Если можно я задам его заново ???
файл для отправки : 1.txt
адрес получателя : pupkin@mail.ru
мои параметры почты : vadim422@yandex.ru
smtp.yandex.ru
"mypassword"
дополнительные параметры отправки почты(возможно специфичные только для theBat) :
Аутентификация SMTP (RFC-2554) = True
В данном случае переменные равны следующим значениям :
-------------------------------
var to = "pupkin@mail.ru";
var subj = "тема письма";
var text = "собственно тело письма";
SendMail(to, subj, text, ["c:\\1.txt"]);
а в поцедуре SendMail
From = "vadim422@yandex.ru";
Item(???) = ???;
Item(???)=2;
---------------------------------
непонятен пункт // Setting configuration params непонятен не в том как он работает (ясно что не пойму пока - объяснять нестоит) непонятно мне что писать то ?
Например я пользуюсь theBatom и вот те реальные параметры которые требуются theBaty для отправки писем :
1) vadim422@yandex.ru
2) smtp.yandex.ru
3) "mypassword" для smtp
Их то где соответствие в скрипте ?
1) Smtp я так понял указывается через Item
Т.е. ведь это бред так определять Item?
Цитата:
// Setting configuration params
with(refConf.Fields)
{
Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.yandex.ru";
Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2;
}
А как? и оставлять ли мне второй пункт где он = 2 ???
2) Насчет vadim422@yandex.ru понятно - это пункт From
т.е. From="vadim422@yandex.ru"
3) А как насчет "mypassword" ???
--------------------------------------------------------
Возможно что я не получаю доконца понятный мне ответ изза того что сам невнятно задаю вопрос. Если можно я задам его заново ???
файл для отправки : 1.txt
адрес получателя : pupkin@mail.ru
мои параметры почты : vadim422@yandex.ru
smtp.yandex.ru
"mypassword"
дополнительные параметры отправки почты(возможно специфичные только для theBat) :
Аутентификация SMTP (RFC-2554) = True
В данном случае переменные равны следующим значениям :
-------------------------------
var to = "pupkin@mail.ru";
var subj = "тема письма";
var text = "собственно тело письма";
SendMail(to, subj, text, ["c:\\1.txt"]);
а в поцедуре SendMail
From = "vadim422@yandex.ru";
Item(???) = ???;
Item(???)=2;
---------------------------------
wwwad
Цитата:
оставлять нужно, это определяет способ отсылки. В js не видны именованные константы, поэтому приходится юзать их численные значения.
Цитата:
для авторизации на smtp сервере добавь
Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1;
Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "твой логин для почты";
Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "твой пароль";
если в сети используется прокси сервер, то также нужно добавить:
Item("http://schemas.microsoft.com/cdo/configuration/urlproxyserver") = "www.someproxy.com:8080";
если и прокся требует авторизации, тогда не знаю
Цитата:
А как? и оставлять ли мне второй пункт где он = 2 ???
оставлять нужно, это определяет способ отсылки. В js не видны именованные константы, поэтому приходится юзать их численные значения.
Цитата:
3) А как насчет "mypassword" ???
для авторизации на smtp сервере добавь
Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1;
Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "твой логин для почты";
Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "твой пароль";
если в сети используется прокси сервер, то также нужно добавить:
Item("http://schemas.microsoft.com/cdo/configuration/urlproxyserver") = "www.someproxy.com:8080";
если и прокся требует авторизации, тогда не знаю
БЛИННН - не отправляет !!! вот что пишет :
Цитата:
А вроде все правильно написал в скрипте. Вот он :
Цитата:
Что же не так ???
И еще вопрос - отправка почты с помощью js скрипта возможен только с помощью "http://schemas.microsoft.com" ? может у них там проблема ?
Цитата:
SendMail error !!! : Неудалось отправить сообщение на SMTP-сервер. Код ошибки транспорта:0х80040217.Отклик сервера: not available
А вроде все правильно написал в скрипте. Вот он :
Цитата:
var to = "vadim422@yandex.ru";
var subj = "тема письма";
var text = "собственно тело письма";
SendMail(to, subj, text, ["c:\\1.txt", "c:\\2.txt"]);
function SendMail(sRecipientMail, sSubject, sMsgBody,files)
{
try
{
// create a session and log on -- username and password in profile
var refMsg = WScript.CreateObject("CDO.Message");
var refConf = WScript.CreateObject("CDO.Configuration");
// Setting configuration params
with(refConf.Fields)
{
Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.yandex.ru";
Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2;
Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1;
Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "vadim422@yandex.ru";
Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "*******";
}
refConf.Fields.Update();
with(refMsg)
{
Configuration = refConf;
To = sRecipientMail;
From = "vadim422@yandex.ru";
Subject = sSubject;
TextBody = sMsgBody;
}
if (files)
{
for(var i=0; i<files.length; i++)
refMsg.AddAttachment(files[i]);
}
refMsg.Send();
}
catch(e)
{
WScript.Echo("SendMail error !!! : " + e.description);
WScript.Quit(1);
}
}
Что же не так ???
И еще вопрос - отправка почты с помощью js скрипта возможен только с помощью "http://schemas.microsoft.com" ? может у них там проблема ?
wwwad
Думаю проблема в яндексе.
у меня этот стрипт исправно отсылает почту уже долгое время.
а недевно проверил, и файлы аттачатся нормально.
Думаю проблема в яндексе.
у меня этот стрипт исправно отсылает почту уже долгое время.
а недевно проверил, и файлы аттачатся нормально.
distance
если дело в Яндексе - подскажи пожалуйста
каким сервером пользуешься ты - я тогда тоже там создам почту - очень надо чтобы скрипт заработал
если дело в Яндексе - подскажи пожалуйста
каким сервером пользуешься ты - я тогда тоже там создам почту - очень надо чтобы скрипт заработал
там не получится это сервер у меня на работе.
возможно, яндексу требуется дополнительная настройка в свойствах ящика... например в Google Mail по умолчанию pop3-протокол заблокирован и его нужно вручную разрешить.
ps. Если в системе установлен Microsoft Outlook (не Express) то можно использовать его сервер автоматизации для отправки почты. Но в этом направлении не копал...
пошарь по google строку Outlook.Application, должны найтись всякие примеры. Удачи.
возможно, яндексу требуется дополнительная настройка в свойствах ящика... например в Google Mail по умолчанию pop3-протокол заблокирован и его нужно вручную разрешить.
ps. Если в системе установлен Microsoft Outlook (не Express) то можно использовать его сервер автоматизации для отправки почты. Но в этом направлении не копал...
пошарь по google строку Outlook.Application, должны найтись всякие примеры. Удачи.
Все . Вопросов больше не имею . Спасибо огромное !!!
Код: 'Отправить сообщение с помощью локальной службы SMTP
Const cdoSendUsingPickup = 1
Set objMessage = CreateObject("CDO.Message")
' Тема сообщения и адрес отправителя
objMessage.Subject = "Тема письма"
objMessage.From = """Генератор отчетов"" "
' Получатели письма указываются через " ; "
objMessage.To = "login@yandex.ru"
' Содержимое тела письма.
objMessage.TextBody = "JSC AUTO SERVICE. Please find Orders reporting in attachment." & vbCRLF & _
"------------------------------------------" & vbCRLF & _
"Best regards, Auto report service" & vbCRLF & _
"Support line: it@domian.ru" & vbCRLF
' Добавляем файл - вложение для отправки отчета по EMail
objMessage.AddAttachment "C:\1.txt"
' Секция настроек SMTP сервера для отправки почты.
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
' Имя или IP адрес SMTP Server
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "login@yandex.ru"
' Тип используемой авторизации, NONE, Basic (Base64 encoded), NTLM
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic
' SMTP server
objMessage.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.yandex.ru"
' Авторизация на SMTP server
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "login"
' Пароль SMTP server
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"
' Порт SMTP Server port (обычно 25, но может быть и другим)
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
' Использование SSL для соединения (False или True)
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False
' Время ожидания соединения с почтовым сервером
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
' Сохранить настройки CDO для отправки сообщения
objMessage.Configuration.Fields.Update
' Отправить созданное почтовое сообщение с вложением по указанному адресу
objMsg.Send
Wscript.Echo "Отправка завершена"
Wscript.Quit
Страницы: 1
Предыдущая тема: Вычисление трудового стажа на Access 97
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.