使用批处理文件发送电子邮件

3

我已经使用我的办公室id配置了outlook,对于批处理脚本非常陌生。请问通过批处理文件向我的同事发送电子邮件的最简单方式(最简单的代码)是什么?

谢谢!


如果您可以使用外部工具,请检查 blat -> http://www.blat.net/examples/batch.html - npocmaka
1个回答

3

我可以为您提供3个选项:

  1. The bottom line is there's no built-in way in batch, but there are third-party tools like blat etc. that can be called from a batch file.

  2. You can enable the installed SMTP Server of Windows. And then run a Powershell script:

    $smtpServer = "system.abc.com"
    $smtpFrom = "dontreply@abc.com"
    $smtpTo = "something@abc.com"
    $messageSubject = "Put your subject here"
    
    $message = New-Object System.Net.Mail.MailMessage $smtpfrom, $smtpto
    $message.Subject = $messageSubject
    $message.IsBodyHTML = $true
    $message.Body = Get-Content debug.txt
    
    $smtp = New-Object Net.Mail.SmtpClient($smtpServer)
    $smtp.Send($message)
    
  3. You can enable the installed SMTP Server of Windows. And then run a VBScript:

    Const ForReading = 1
    Const ForWriting = 2
    Const ForAppending = 8
    Const FileToBeUsed = "debug.txt"
    Dim objCDO1
    Dim fso, f
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set f = fso.OpenTextFile(FileToBeUsed, ForReading)
    Set objCDO1 = CreateObject("CDO.Message")
    objCDO1.Textbody = f.ReadAll
    f.Close
    objCDO1.TO ="something@abc.com"
    objCDO1.From = "dontreply@abc.com"
    objCDO1.Subject = "Put your subject here"
    objCDO1.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration /sendusing") = 2 
    objCDO1.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration /smtpserver") = "system.abc.com"
    objCDO1.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration /smtpserverport") = 25 
    objCDO1.Configuration.Fields.Update     
    objCDO1.Send
    Set f = Nothing
    Set fso = Nothing
    

选择权在你手中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接