代码之家  ›  专栏  ›  技术社区  ›  Arunachalam

如何使用PowerShell v1发送带有附件的电子邮件?

  •  4
  • Arunachalam  · 技术社区  · 16 年前

    如何使用PowerShell v1发送带有附件的电子邮件?

    2 回复  |  直到 7 年前
        1
  •  5
  •   Brian    16 年前

    这个功能对我很有效。…

    function send-emailwithattachment( [string] $subject, [string] $body, [object] $to, [Object] $attachment  )
    {
        $from = "sender.address@domain.com"
        $domain  = "smtp-server.domain.com"
    
        $mail = new-object System.Net.Mail.MailMessage
    
        for($i=0; $i -lt $to.Length; $i++) {
            $mail.To.Add($to[$i]);
        }
    
        $mail.From = new-object System.Net.Mail.MailAddress($from)
        $mail.Subject = $subject
        $mail.Body = $body
    
        $attach = New-Object System.Net.Mail.Attachment($attachment)
        $mail.Attachments.Add($attach)
    
        $smtp = new-object System.Net.Mail.SmtpClient($domain)
        $smtp.Send($mail)
    
        $attach.Dispose()
        $mail.Dispose()
    }
    
        2
  •  0
  •   Mohit Singh    7 年前

    尝试使用这个简单的代码,它将帮助您从定义的路径发送电子邮件:$filesPath

        $smtpServer = "<smtprelay>"
        $msg = new-object Net.Mail.MailMessage
    
        #Change port number for SSL to 587
        $smtp = New-Object Net.Mail.SmtpClient($SmtpServer, 25) 
    
        #Uncomment Next line for SSL  
        #$smtp.EnableSsl = $true
    
        #From Address
        $msg.From = ""
        #To Address, Copy the below line for multiple recipients
        $msg.To.Add("")
        $msg.Cc.Add("")
    
    
        #Message Subject
        $msg.Subject = "Test Subject"
    
        $FilesPath = "C:\testfile.txt"
    
        $attachment = New-Object System.Net.Mail.Attachment –ArgumentList $FilesPath
        $msg.Attachments.Add($attachment)
    
    
        $smtp.Send($msg)
        $msg.Dispose();
    
    推荐文章