PDA

Показать полную графическую версию : Скрипт для отправки на e-mail


APiM
20-01-2014, 00:01
Есть скрипт для отправки на 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
APiM, Вам пора ознакомиться с тэгом (http://forum.oszone.net/misc.php?do=bbcode#code).

но как сделать чтобы не указывать путь типо C:\test.txt, а чтобы отправлялся файл из этой же папки где лежит скрипт »
[code]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
Спасибо)

omegastripes
23-01-2014, 18:58
objMessage.AddAttachment replace(wscript.scriptfullname, wscript.scriptname, "File.txt")

Iska
23-01-2014, 19:20
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
не всегда самый хитрожёппый путь — самый правильный »
Спешу исправить оплошность:
objMessage.AddAttachment Left(WScript.ScriptFullName, InStrRev(WScript.ScriptFullName, WScript.ScriptName) - 1) & "File.txt"

Iska
01-02-2014, 00:22
Спешу исправить оплошность: »
;) «FSO.GetParentFolderName(WScript.ScriptFullName)» проще и нагляднее.

omegastripes
02-02-2014, 00:18
проще и нагляднее »
Соглашусь. Однако 3 строки вместо 1 немного смущают, можно как-то так:
objMessage.AddAttachment CreateObject("Scripting.FileSystemObject").GetParentFolderName(WScript.ScriptFullName) & "\File.txt"

Iska
02-02-2014, 07:40
omegastripes, можно.

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




© OSzone.net 2001-2012