diavard
19-02-2011, 22:23
Добрый день. Помогите решить проблему.
Есть полностью рабочий скрипт gmail.vbs
Действия скрипта:
проверяет соединение с интернетом, если нет соединения - выдает
сообщение: "Проверьте соединение с интернетом".
Если интернет есть -
Создает письмо с указанными в скрипте параметрами и прикрепляет файл,
лежащий по пути: D:\Program files\Blablabla\zakaz\zacaz035_2.rpt
Отправляет этот файл по почте и выводит сообщение клиенту: "Ваш заказ успешно отправлен!"
Не могу решить:
1. Программа Blablabla не всегда находится по пути D:\Program files\Blablabla, у разных пользователей пути разные.
Как заставить скрипт искать где установлена программа?? Запись о пути установки есть в реестре:
HKEY_LOCAL_MACHINE\SOFTWARE\Blablabla
(параметр Path).
2. Как заставить прикреплять не конкретый файл, а файл с раширением
*.rpt, так как все имена заказов разные.
set WshShell = CreateObject("WScript.Shell")
'Запускаем ping и ожидаем завершения его работы
Return = WshShell.Run("ping www.google.com ", 0, true)
If Return=1 then
MsgBox"Проверьте соединение с интернетом!"
Else
Const cdoSendUsingPickup = 1 'Send message using the local SMTP service pickup directory.
Const cdoSendUsingPort = 2 'Send the message using the network (SMTP over the network).
Const cdoAnonymous = 0 'Do not authenticate
Const cdoBasic = 1 'basic (clear-text) authentication
Const cdoNTLM = 2 'NTLM
Set objMessage = CreateObject("CDO.Message")
objMessage.Subject = "Тема"
objMessage.From = """Zakaz"" <user@gmail.com>"
objMessage.To = "mybox@gmail.com"
objMessage.TextBody = "Вам был отправлен заказ."
objMessage.AddAttachment " D:\Program files\Blablabla\zakaz\zacaz035_2.rpt "
'==This section provides the configuration information for the remote SMTP server.
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
'Name or IP of Remote SMTP Server
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com"
'Type of authentication, NONE, Basic (Base64 encoded), NTLM
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic
'Your UserID on the SMTP server
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusername") = "user@gmail.com"
'Your password on the SMTP server
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"
'Server port (typically 25)
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
'Use SSL for the connection (False or True)
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
'Connection Timeout in seconds (the maximum time CDO will try to establish a connection to the SMTP server)
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
objMessage.Configuration.Fields.Update
'==End remote SMTP server configuration section==
objMessage.Send
MsgBox"Ваш заказ успешно отправлен!"
End if
Есть полностью рабочий скрипт gmail.vbs
Действия скрипта:
проверяет соединение с интернетом, если нет соединения - выдает
сообщение: "Проверьте соединение с интернетом".
Если интернет есть -
Создает письмо с указанными в скрипте параметрами и прикрепляет файл,
лежащий по пути: D:\Program files\Blablabla\zakaz\zacaz035_2.rpt
Отправляет этот файл по почте и выводит сообщение клиенту: "Ваш заказ успешно отправлен!"
Не могу решить:
1. Программа Blablabla не всегда находится по пути D:\Program files\Blablabla, у разных пользователей пути разные.
Как заставить скрипт искать где установлена программа?? Запись о пути установки есть в реестре:
HKEY_LOCAL_MACHINE\SOFTWARE\Blablabla
(параметр Path).
2. Как заставить прикреплять не конкретый файл, а файл с раширением
*.rpt, так как все имена заказов разные.
set WshShell = CreateObject("WScript.Shell")
'Запускаем ping и ожидаем завершения его работы
Return = WshShell.Run("ping www.google.com ", 0, true)
If Return=1 then
MsgBox"Проверьте соединение с интернетом!"
Else
Const cdoSendUsingPickup = 1 'Send message using the local SMTP service pickup directory.
Const cdoSendUsingPort = 2 'Send the message using the network (SMTP over the network).
Const cdoAnonymous = 0 'Do not authenticate
Const cdoBasic = 1 'basic (clear-text) authentication
Const cdoNTLM = 2 'NTLM
Set objMessage = CreateObject("CDO.Message")
objMessage.Subject = "Тема"
objMessage.From = """Zakaz"" <user@gmail.com>"
objMessage.To = "mybox@gmail.com"
objMessage.TextBody = "Вам был отправлен заказ."
objMessage.AddAttachment " D:\Program files\Blablabla\zakaz\zacaz035_2.rpt "
'==This section provides the configuration information for the remote SMTP server.
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
'Name or IP of Remote SMTP Server
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com"
'Type of authentication, NONE, Basic (Base64 encoded), NTLM
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic
'Your UserID on the SMTP server
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusername") = "user@gmail.com"
'Your password on the SMTP server
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"
'Server port (typically 25)
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
'Use SSL for the connection (False or True)
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
'Connection Timeout in seconds (the maximum time CDO will try to establish a connection to the SMTP server)
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
objMessage.Configuration.Fields.Update
'==End remote SMTP server configuration section==
objMessage.Send
MsgBox"Ваш заказ успешно отправлен!"
End if