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

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

APiM 20-01-2014 00:01 2292477

Скрипт для отправки на e-mail
 
Есть скрипт для отправки на e-mail

Set objMessage = CreateObject("CDO.Message")
emailFrom = "test@mail.ru"
objMessage.Subject = "Проверка"
objMessage.From = emailFrom
objMessage.To = "test@mail.ru"
objMessage.TextBody = "Загаловок"
objMessage.AddAttachment "Путь до файла"
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.mail.ru"
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 2525
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = emailFrom
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "Пароль от почты"
objMessage.Configuration.Fields.Update
objMessage.Send

Скрипт рабочий, но как сделать чтобы не указывать путь типо C:\test.txt, а чтобы отправлялся файл из этой же папки где лежит скрипт

Iska 20-01-2014 00:34 2292502

APiM, Вам пора ознакомиться с тэгом [code].

Цитата:

Цитата APiM
но как сделать чтобы не указывать путь типо C:\test.txt, а чтобы отправлялся файл из этой же папки где лежит скрипт »

Код:

Dim objFSO

Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")

objMessage.AddAttachment objFSO.BuildPath(objFSO.GetParentFolderName(WScript.ScriptFullName), "File.txt")

Set objFSO = Nothing


APiM 20-01-2014 21:25 2293019

Спасибо)

omegastripes 23-01-2014 18:58 2294883

Код:

objMessage.AddAttachment replace(wscript.scriptfullname, wscript.scriptname, "File.txt")

Iska 23-01-2014 19:20 2294904

Цитата:

Цитата omegastripes
objMessage.AddAttachment replace(wscript.scriptfullname, wscript.scriptname, "File.txt") »

WScript.ScriptFullName == "c:\My Path 1.vbscript codes here\1.vbs\1.vbs". Радуемся результату.

читать дальше »
Вывод: не всегда самый хитрожёппый путь — самый правильный.

omegastripes 01-02-2014 00:13 2300316

Цитата:

Цитата Iska
не всегда самый хитрожёппый путь — самый правильный »

Спешу исправить оплошность:
Код:

objMessage.AddAttachment Left(WScript.ScriptFullName, InStrRev(WScript.ScriptFullName, WScript.ScriptName) - 1) & "File.txt"

Iska 01-02-2014 00:22 2300322

Цитата:

Цитата omegastripes
Спешу исправить оплошность: »

;) «FSO.GetParentFolderName(WScript.ScriptFullName)» проще и нагляднее.

omegastripes 02-02-2014 00:18 2300944

Цитата:

Цитата Iska
проще и нагляднее »

Соглашусь. Однако 3 строки вместо 1 немного смущают, можно как-то так:
Код:

objMessage.AddAttachment CreateObject("Scripting.FileSystemObject").GetParentFolderName(WScript.ScriptFullName) & "\File.txt"

Iska 02-02-2014 07:40 2301018

omegastripes, можно.

Но и я могу тут возразить, что желательно перед попыткой присоединения файла к письму проверять его существование посредством «FSO.FileExists()». И таким образом мы возвращается к нескольким строкам ;).


Время: 20:29.

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