Задача следующая: На флешке находится важный файл либо группа файлов, которые нельзя оставлять в системе, но надо делать бэкап (флешка может «погибнуть»). Было решено отправлять их после изменения на почту.
Были выдвинуты три задачи:
- Просто отправить один файл
- Отправить группу файлов. Каждый прицепить отдельно
- Вогнать предварительно файлы в архив и отправить
Решение
Простой скрипт отправки письма с вложением. Для более универсальной работы путь к файлу будем получать в процессе работы скрипта. Файл должен лежать в той же папке где и скрипт.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | try { var objEmail; //CDO объект для отправки сообщения var MessText; //Текст сообщения var AttFile; //Файл вложения. var strFileName = "file1.txt" //Имя файла вложения //Формируем текст сообщения MessText = "Здесь должен быть тескт сообщения\n"; //создаем объект FileSystemObject var fso = new ActiveXObject("Scripting.FileSystemObject"); var strFileName; var fid = fso.GetAbsolutePathName(""); // путь к текущей папке AttFile = fid.replace(/\\/g, "\\\\")+"\\"+strFileName; //Указываем путь к файлу, который необходимо вложить в сообщение objEmail = WScript.CreateObject("CDO.Message"); //Создаем объект CDO и получаем на него ссылку в переменную objEmail // Указание необходимых параметров объекта CDO objEmail.From = "backup@domain.ru"; //параметры отправителя (имя и адрес электронной почты) objEmail.To = "mail@domain.ru"; //адрес электронной почты получателя objEmail.Subject = "Архив"; //тема сообщения objEmail.AddAttachment(AttFile); //файла вложения objEmail.Textbody = MessText; //текст сообщения //Отправить сообщение используя сетевую SMTP-службу (1 - используется для отправки через локальную SMTP-службу) objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2; //Указание имени SMTP-сервера objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "192.168.0.2"; //Указание SMPT-порта на сервере objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25; //Обновить конфигурацию CDO-объекта objEmail.Configuration.Fields.Update(); //Послать сообщение с помощью метода Send() objEmail.Send(); // WScript.Echo('Отправленно'); } catch (e) { WScript.Echo('Ошибка отправки: '+e.name); } |
Отправка нескольких файлов. Скрипт просто перебирает файлы в папке где он лежит и прикрепляет их к письму.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | try { var objEmail; //CDO объект для отправки сообщения var MessText; //Текст сообщения var AttFile = new Array(); //Файл вложения. //Формируем текст сообщения MessText = "Здесь должен быть тескт сообщения\n"; //создаем объект FileSystemObject var i = 0; var fso = new ActiveXObject("Scripting.FileSystemObject"); var strFileName; var fid = fso.GetAbsolutePathName(""); // путь к текущей папки var fil = fso.GetFolder (fid); // получение объекта var fic = new Enumerator (fil.files); for (; !fic.atEnd (); fic.moveNext ()) { strFileName = String (fic.item()); if (strFileName != fid+"\\mailto_file.js") { // исключаем себя strFileName = strFileName.replace(/\\/g, "\\\\"); AttFile[i] = strFileName; //Указываем путь к файлу, который необходимо вложить в сообщение i++; } } objEmail = WScript.CreateObject("CDO.Message"); //Создаем объект CDO и получаем на него ссылку в переменную objEmail // Указание необходимых параметров объекта CDO objEmail.From = "backup@domain.ru"; //параметры отправителя (имя и адрес электронной почты) objEmail.To = "mail@domain.ru"; //адрес электронной почты получателя objEmail.Subject = "Архив"; //тема сообщения for (var i=0; i<=AttFile.length-1; i++){ objEmail.AddAttachment(AttFile[i]); //файла вложения } objEmail.Textbody = MessText; //текст сообщения //Отправить сообщение используя сетевую SMTP-службу (1 - используется для отправки через локальную SMTP-службу) objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2; //Указание имени SMTP-сервера objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "192.168.0.2"; //Указание SMPT-порта на сервере objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25; //Обновить конфигурацию CDO-объекта objEmail.Configuration.Fields.Update(); //Послать сообщение с помощью метода Send() objEmail.Send(); // WScript.Echo('Отправленно'); } catch (e) { WScript.Echo('Ошибка отправки: '+e.name); } |
Отправка файлов с предварительным архивированием. В качестве архиватора использую 7zip.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | try { var objEmail; //CDO объект для отправки сообщения var MessText; //Текст сообщения var AttFile; //Файл вложения. var sfilename = "mailto_file_zip.js"; //Имя файла скрипта var afilename = "archive.zip"; //Имя файла архива var zipname = "c:\\Program Files\\7-Zip\\7z.exe"; //Путь к программе //Формируем текст сообщения MessText = "Данное сообщение послано\n"; MessText +="скриптом"+sfilename+"\n"; //создаем объект FileSystemObject var fso = new ActiveXObject("Scripting.FileSystemObject"); var fid = fso.GetAbsolutePathName(""); //Путь к текущей папке var fid = fid.replace(/\\/g, "\\\\")+"\\"; //Экранируем //создаем объект WScript.Shell var sh = new ActiveXObject("WScript.Shell"); sh.Run('"'+zipname+'" a -x!*.js -x!*.zip -tzip "'+fid+afilename+'" "'+fid+'*"', 0, true); //Запуск архиватора objEmail = WScript.CreateObject("CDO.Message"); //Создаем объект CDO и получаем на него ссылку в переменную objEmail // Указание необходимых параметров объекта CDO objEmail.From = "backup@domain.ru"; //параметры отправителя (имя и адрес электронной почты) objEmail.To = "mail@domain.ru"; //адрес электронной почты получателя objEmail.Subject = "Архив"; //тема сообщения objEmail.AddAttachment(fid+afilename); //файла вложения objEmail.Textbody = MessText; //текст сообщения //Отправить сообщение используя сетевую SMTP-службу (1 - используется для отправки через локальную SMTP-службу) objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2; //Указание имени SMTP-сервера objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "192.168.0.2"; //Указание SMPT-порта на сервере objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25; //Обновить конфигурацию CDO-объекта objEmail.Configuration.Fields.Update(); //Послать сообщение с помощью метода Send() objEmail.Send(); // WScript.Echo('Отправленно'); } catch (e) { WScript.Echo('Ошибка отправки'); } |
Скрипты были опробованы на Windows 7 и Windows XP
А можете дописать скрипти чтоб после отправки сообщения файлы удалялись из директории, извините конечно за такую прозьбу но я с жавой не дружу вот и возник такой вопросик-прозьба. Зарание спасиба. ответ можна на емейл demydyuk@rambler.ru
There are some fascinating closing dates in this article however I don’t know if I see all of them middle to heart. There is some validity however I’ll take hold opinion until I look into it further. Good article , thanks and we would like more! Added to FeedBurner as effectively
Online porno Italiano luiginopittore.it mature sesso videos mobile XXX.
Ответил на почту.
Всем привет!
Может, этот вопрос не совсем в тему, но подскажите, плиз, — а есть ли способ с помощью ActiveXObject заносить данные, считанные из текстового файла в mysql ? И если нет, то хотя бы, в каком направлени нужно рыть для решения этой задачи?
У меня была подобная задача, я просто экспортировал данные в csv. Потом через phpmyadmin импортировал в базу mysql.
Всем здравствуйте!
Подскажите, а как реализовать отправку через авторизацию на SMTP-сервере.
Надо добавить строки
objEmail.Configuration.Fields.Item(«http://schemas.microsoft.com/cdo/configuration/sendusername») = «Логин»
objEmail.Configuration.Fields.Item(«http://schemas.microsoft.com/cdo/configuration/sendpassword») = «Пароль»
кцукц
А можете дописать скрипти чтоб после отправки сообщения файлы удалялись из директории, извините конечно за такую прозьбу но я с жавой не дружу вот и возник такой вопросик-прозьба. Зарание спасиба. Ответ можна на емейл lomonosovigor1@yandex.ru
Игорь, я вам отправил на почту скрипт.
admin, скрипт должен работать на windows 7 или может нужны дополнительные библиотеки
admin, извините помощь не нужна
p.s забыл, что google ругается на exe файлы
Хотелось бы пример, чтобы текст сообщения MessText тянулся из какого-нибудь файла..
Помогите, плиз, добавить в архив пароль в этом тесте скрипта!
это только часть скрипта конечно
function backupDBOld()
{
try
{
var NewTextFile = oFileSystemObject.CreateTextFile(backupFileName,false);
NewTextFile.Write(String.fromCharCode(80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0));
NewTextFile.Close();
var ZIPFile = oFileSystemObject.GetAbsolutePathName(backupFileName);
var dFolder = oShellApplication.NameSpace(ZIPFile);
var file = oFileSystemObject.GetAbsolutePathName(BaseFileName);
var FolderNameSpace = oFileSystemObject.GetParentFolderName(file);
var Folder = oShellApplication.Namespace(FolderNameSpace);
var FolderItemNameSpace = oFileSystemObject.GetFileName(file);
var FolderItem = Folder.ParseName(FolderItemNameSpace);
if (!createBackup)
return 0;
dFolder.CopyHere(file);
ret = 0;
log(format(«Попытка создания резервной копии», ret), ret != 0);
}
catch(e)
{
alert(e.message);
CollectGarbage(); // предотвращает исключение out of memory
log(format(«Исключение при создании резервной копии базы», e.name, e.message), true);
ret = -1;
}
if (ret == 0)
backupCreated = true;
return ret;
}
Спасибо заранее! Если не трудно то прямо на «kovan2002(АТ)mail.ru»
10 Best Dating Sites 2019 (5213 single girls in your city): http://versputleire.tk/0jl2?&yhbgh=3uAwFYKTO
Nude Sex Pics, Sexy Naked Women, Hot Girls Porn
http://asinxxxtube.adablog69.com/?daniella
babysitter porn pic galleries wakiki porn best free porn stories with pictures best free pain porn sites dorothy black porn
Как предотвратить инсульт головного мозга — Ангиография сосудов головного мозга, Глиома головного мозга