Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; Includes
- #include <GUIConstantsEx.au3>
- #include <IE.au3>
- #include <WindowsConstants.au3>
- ; Create GUI Window
- $windowMain = GUICreate("Embedded Outlook Client", 1001, 701, 242, 88, BitOR($WS_MAXIMIZEBOX,$WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_GROUP,$WS_TABSTOP,$WS_BORDER,$WS_CLIPSIBLINGS))
- ; Display GUI
- GUISetState(@SW_SHOW)
- ; Create an outline for the Embedded Browser
- $guiEmailGroup = GUICtrlCreateGroup("", 8, 48, 801, 601)
- ; Initiate function
- Local $oIE = _IECreateEmbedded()
- ; Created an embedded browser
- $browserObj = GUICtrlCreateObj($oIE, 20, 60, 780, 580)
- ; Allow the browser to be resized if the window is maximized.
- GUICtrlSetResizing ( $browserObj, $GUI_DOCKAUTO)
- ; Navigate to Outlook
- _IENavigate($oIE, "https://outlook.office.com/owa/#path=/mail")
- While 1
- $nMsg = GUIGetMsg()
- Switch $nMsg
- Case $GUI_EVENT_CLOSE
- Exit
- EndSwitch
- WEnd
- Func _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject = "", $as_Body = "", $s_AttachFiles = "", $s_CcAddress = "", $s_BccAddress = "", $s_Importance = "Normal", $s_Username = "", $s_Password = "", $IPPort = 25, $ssl = 0)
- Local $objEmail = ObjCreate("CDO.Message")
- $objEmail.From = '"' & $s_FromName & '" <' & $s_FromAddress & '>'
- $objEmail.To = $s_ToAddress ; was $objEmail.To
- Local $i_Error = 0
- Local $i_Error_desciption = ""
- If $s_CcAddress <> "" Then $objEmail.Cc = $s_CcAddress
- If $s_BccAddress <> "" Then $objEmail.Bcc = $s_BccAddress
- $objEmail.Subject = $s_Subject
- If StringInStr($as_Body, "<") And StringInStr($as_Body, ">") Then
- $objEmail.HTMLBody = $as_Body
- Else
- $objEmail.Textbody = $as_Body & @CRLF
- EndIf
- If $s_AttachFiles <> "" Then
- Local $S_Files2Attach = StringSplit($s_AttachFiles, ";")
- For $x = 1 To $S_Files2Attach[0]
- $S_Files2Attach[$x] = _PathFull($S_Files2Attach[$x])
- ;~ ConsoleWrite('@@ Debug : $S_Files2Attach[$x] = ' & $S_Files2Attach[$x] & @LF & '>Error code: ' & @error & @LF) ;### Debug Console
- If FileExists($S_Files2Attach[$x]) Then
- ConsoleWrite('+> File attachment added: ' & $S_Files2Attach[$x] & @LF)
- $objEmail.AddAttachment($S_Files2Attach[$x])
- Else
- ConsoleWrite('!> File not found to attach: ' & $S_Files2Attach[$x] & @LF)
- SetError(1)
- Return 0
- EndIf
- Next
- EndIf
- $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
- $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = $s_SmtpServer
- If Number($IPPort) = 0 Then $IPPort = 25
- $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = $IPPort
- ;Authenticated SMTP
- If $s_Username <> "" Then
- $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
- $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = $s_Username
- $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = $s_Password
- EndIf
- If $ssl Then
- $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
- EndIf
- ;Update settings
- $objEmail.Configuration.Fields.Update
- ; Set Email Importance
- Switch $s_Importance
- Case "High"
- $objEmail.Fields.Item("urn:schemas:mailheader:Importance") = "High"
- Case "Normal"
- $objEmail.Fields.Item("urn:schemas:mailheader:Importance") = "Normal"
- Case "Low"
- $objEmail.Fields.Item("urn:schemas:mailheader:Importance") = "Low"
- EndSwitch
- $objEmail.Fields.Update
- ; Sent the Message
- $objEmail.Send
- If @error Then
- SetError(2)
- Return $oMyRet[1]
- EndIf
- $objEmail = ""
- EndFunc ;==>_INetSmtpMailCom
- ; Com Error Handler
- Func MyErrFunc()
- $HexNumber = Hex($oMyError.number, 8)
- $oMyRet[0] = $HexNumber
- $oMyRet[1] = StringStripWS($oMyError.description, 3)
- ConsoleWrite("### COM Error ! Number: " & $HexNumber & " ScriptLine: " & $oMyError.scriptline & " Description: " & $oMyRet[1] & @LF)
- SetError(1); something to check for when this function returns
- Return
- EndFunc ;==>MyErrFunc
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement