Reputation: 539
I have my outlook configured with my office id and am extremely new to batch scripting. What is the simplest way (simplest code) to send an email via batch file to my colleague.
thanks
Upvotes: 3
Views: 16208
Reputation: 8312
I can see 3 options for you:
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.
You can enable the installed SMTP Server of Windows. And then run a Powershell script:
$smtpServer = "system.abc.com"
$smtpFrom = "[email protected]"
$smtpTo = "[email protected]"
$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)
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 ="[email protected]"
objCDO1.From = "[email protected]"
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
Choice is yours.
Upvotes: 3