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

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

JeaRmiX 19-07-2011 11:59 1715540

Проблемма со скриптом отправки письма
 
Я никогда не ползовался PS решил попробовать не срослось. Помогите кто чем может



Сам скрипт воть

Код:

#* =========================  #* SMTP Mail Alert  #* =========================   
#* Create new .NET object and assign to variable 
$mail = New-Object System.Net.Mail.MailMessage   
#* Sender Address 
$mail.From = New-Object System.Net.MailAddress("mail@gmail.com");   
#* Recipient Address 
$mail.To.Add("mail@gmail.com"); 
 #* Message Subject 
$mail.Subject = "TEST";   
#* Message Body 
$mail.Body = "Hi, am a test"; 
 #* Connect to your mail server 
$smtp = New-Object System.Net.Mail.SmtpClient("mail.gmail.com.ua:26");   
#* Uncomment line below if authentication is required 
$smtp.Credentials = New-Object System.Net.NetworkCredential("mail@gmail.com", "1234567890");   
#* Send Email 
$smtp.Send($mail);

PS C:\> executionpolicy
Unrestricted



UPD:


New-Object : Не удается найти тип [System.Net.MailAddress]: убедитесь в том, что сборка, содержащая этот тип, загружена
.
C:\test.ps1:9 знак:25
+ $mail.From = New-Object <<<< System.Net.MailAddress("mail@gmail.com");
+ CategoryInfo : InvalidType: (:) [New-Object], PSArgumentException
+ FullyQualifiedErrorId : TypeNotFound,Microsoft.PowerShell.Commands.NewObjectCommand

Исключение при вызове "Send" с "1" аргументами: "Необходимо указать адрес отправителя."
C:\test.ps1:27 знак:12
+ $smtp.Send <<<< ($mail);
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : DotNetMethodException

amel27 19-07-2011 12:06 1715546

Цитата:

Цитата JeaRmiX
PS C:\> test.ps1 »

Цитата:

Цитата JeaRmiX
Если вы уверены в надежности команды, введите ".\test.ps1" »

JeaRmiX, для PS v2 есть альтернатива:
Код:

Help Send-MailMessage -Examples

JeaRmiX 19-07-2011 12:32 1715562

Цитата:

Цитата amel27
Help Send-MailMessage -Examples »

smtp port 26
требует аунтификации

JeaRmiX 19-07-2011 12:53 1715588

Вопрос закрыт отработало


Код:


$EmailFrom = "mail@gmail.com"
$EmailTo = "mail@gmail.com"
$Subject = "test"
$Body = "Test is good"
$SMTPServer = "mail.gmail.com"
$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 26)
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential("mail@gmail.com",

"1234567890");
$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)



Время: 05:24.

Время: 05:24.
© OSzone.net 2001-