Jump to content

This site uses cookies. By continuing to browse the site you are agreeing to our use of cookies. Find out more here. X
X


Photo

email gmail


  • Please log in to reply
12 replies to this topic

#1 TheOnlyOne

TheOnlyOne

    Prodigy

  • Active Members
  • PipPipPip
  • 170 posts

Posted 25 January 2010 - 10:42 PM

im trying to send a email from gmail account

okay now i have tryed this example

AutoIt         
; ;################################## ; Include ;################################## #Include<file.au3> ;################################## ; Variables ;################################## $SmtpServer = "smtp.gmail.com"             ; address for the smtp-server to use - REQUIRED $FromName = "Name"                      ; name from who the email was sent $FromAddress = "ACupdater@gmail.com" ; address from where the mail should come $ToAddress = "sumsar44@hotmail.com"   ; destination address of the email - REQUIRED $Subject = "Userinfo"                   ; subject from the email - can be anything you want it to be $Body = ""                              ; the messagebody from the mail - can be left blank but then you get a blank mail $AttachFiles = ""                       ; the file you want to attach- leave blank if not needed $CcAddress = "CCadress1@test.com"       ; address for cc - leave blank if not needed $BccAddress = "BCCadress1@test.com"     ; address for bcc - leave blank if not needed $Importance = "Normal"                  ; Send message priority: "High", "Normal", "Low" $Username = "ACupdater@gmail.com"                    ; username for the account used from where the mail gets sent - REQUIRED $Password = "********"                  ; password for the account used from where the mail gets sent - REQUIRED ;$IPPort = 25                            ; port used for sending the mail $ssl = 0                                ; enables/disables secure socket layer sending - put to 1 if using httpS  $IPPort=465                          ; GMAIL port used for sending the mail ;~ $ssl=1                               ; GMAILenables/disables secure socket layer sending - put to 1 if using httpS ;################################## ; Script ;################################## Global $oMyRet[2] Global $oMyError = ObjEvent("AutoIt.Error", "MyErrFunc") $rc = _INetSmtpMailCom($SmtpServer, $FromName, $FromAddress, $ToAddress, $Subject, $Body, $AttachFiles, $CcAddress, $BccAddress, $Importance, $Username, $Password, $IPPort, $ssl) If @error Then     MsgBox(0, "Error sending message", "Error code:" & @error & "  Description:" & $rc) EndIf ; ; The UDF 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     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(62) : $S_Files2Attach = ' & $S_Files2Attach & @LF & '>Error code: ' & @error & @LF) ;### Debug Console             If FileExists($S_Files2Attach[$x]) Then                 $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 ("<a href='http://schemas.microsoft.com/cdo/configuration/sendusing' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/sendusing"</a>) = 2     $objEmail.Configuration.Fields.Item ("<a href='http://schemas.microsoft.com/cdo/configuration/smtpserver' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/smtpserver"</a>) = $s_SmtpServer     If Number($IPPort) = 0 then $IPPort = 25     $objEmail.Configuration.Fields.Item ("<a href='http://schemas.microsoft.com/cdo/configuration/smtpserverport' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/smtpserverport"</a>) = $IPPort     ;Authenticated SMTP     If $s_Username <> "" Then         $objEmail.Configuration.Fields.Item ("<a href='http://schemas.microsoft.com/cdo/configuration/smtpauthenticate' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"</a>) = 1         $objEmail.Configuration.Fields.Item ("<a href='http://schemas.microsoft.com/cdo/configuration/sendusername' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/sendusername"</a>) = $s_Username         $objEmail.Configuration.Fields.Item ("<a href='http://schemas.microsoft.com/cdo/configuration/sendpassword' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/sendpassword"</a>) = $s_Password     EndIf     If $ssl Then         $objEmail.Configuration.Fields.Item ("<a href='http://schemas.microsoft.com/cdo/configuration/smtpusessl' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/smtpusessl"</a>) = 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


but it gives me error 2
or full error :
Error code:2  Description:The transport failed to connect to the server


what have i done wrong?

Edited by TheOnlyOne, 25 January 2010 - 10:42 PM.








#2 Splash

Splash

    Wayfarer

  • Active Members
  • Pip
  • 76 posts

Posted 25 January 2010 - 11:35 PM

$ssl = 0 ;must be 1


#3 TheOnlyOne

TheOnlyOne

    Prodigy

  • Active Members
  • PipPipPip
  • 170 posts

Posted 25 January 2010 - 11:40 PM

hmm still give me error but this time i got this
error code :2  description: The message could not be sent to the SMTP server. the transport error code was:0x80040217. The server response was not available


what to do ?

#4 anixon

anixon

    Universalist

  • Active Members
  • PipPipPipPipPipPip
  • 708 posts

Posted 26 January 2010 - 01:02 AM

hmm still give me error but this time i got this

error code :2  description: The message could not be sent to the SMTP server. the transport error code was:0x80040217. The server response was not available


what to do ?

Use Port 465 for GMail Ant..

#5 TheOnlyOne

TheOnlyOne

    Prodigy

  • Active Members
  • PipPipPip
  • 170 posts

Posted 26 January 2010 - 12:22 PM

but isent that allready on here?

$SmtpServer = "smtp.gmail.com"             ; address for the smtp-server to use - REQUIRED $FromName = "Name"                      ; name from who the email was sent $FromAddress = "ACupdater@gmail.com" ; address from where the mail should come $ToAddress = "sumsar44@hotmail.com"   ; destination address of the email - REQUIRED $Subject = "Userinfo"                   ; subject from the email - can be anything you want it to be $Body = ""                              ; the messagebody from the mail - can be left blank but then you get a blank mail $AttachFiles = ""                       ; the file you want to attach- leave blank if not needed $CcAddress = "CCadress1@test.com"       ; address for cc - leave blank if not needed $BccAddress = "BCCadress1@test.com"     ; address for bcc - leave blank if not needed $Importance = "Normal"                  ; Send message priority: "High", "Normal", "Low" $Username = "ACupdater@gmail.com"                    ; username for the account used from where the mail gets sent - REQUIRED $Password = "********"                  ; password for the account used from where the mail gets sent - REQUIRED ;$IPPort = 25                            ; port used for sending the mail ;$ssl = 0                                ; enables/disables secure socket layer sending - put to 1 if using httpS  $IPPort=465                        ; GMAIL port used for sending the mail  $ssl=1  

with this $IPPort=465 ?

Edited by TheOnlyOne, 26 January 2010 - 12:23 PM.


#6 anixon

anixon

    Universalist

  • Active Members
  • PipPipPipPipPipPip
  • 708 posts

Posted 26 January 2010 - 09:06 PM

but isent that allready on here?

$SmtpServer = "smtp.gmail.com"          ; address for the smtp-server to use - REQUIRED $FromName = "Name"                      ; name from who the email was sent $FromAddress = "ACupdater@gmail.com" ; address from where the mail should come $ToAddress = "sumsar44@hotmail.com"   ; destination address of the email - REQUIRED $Subject = "Userinfo"                   ; subject from the email - can be anything you want it to be $Body = ""                              ; the messagebody from the mail - can be left blank but then you get a blank mail $AttachFiles = ""                       ; the file you want to attach- leave blank if not needed $CcAddress = "CCadress1@test.com"       ; address for cc - leave blank if not needed $BccAddress = "BCCadress1@test.com"     ; address for bcc - leave blank if not needed $Importance = "Normal"                  ; Send message priority: "High", "Normal", "Low" $Username = "ACupdater@gmail.com"                    ; username for the account used from where the mail gets sent - REQUIRED $Password = "********"                  ; password for the account used from where the mail gets sent - REQUIRED ;$IPPort = 25                            ; port used for sending the mail ;$ssl = 0                                ; enables/disables secure socket layer sending - put to 1 if using httpS  $IPPort=465                        ; GMAIL port used for sending the mail  $ssl=1  

with this $IPPort=465 ?


All you need to do is remove the ';' that turns the code into a comment ;$IPPort = 25 remove the ';' and change it to $IPPort = 465. Whilst I have not done any testing with GMail this change to change in value to the $IPPort variable comes from my memory bank based on previous posts in this forum. No guarantee it will work but worth a try. Sorry for the delay in replying. Ant..

Edited by anixon, 26 January 2010 - 09:12 PM.


#7 TheOnlyOne

TheOnlyOne

    Prodigy

  • Active Members
  • PipPipPip
  • 170 posts

Posted 26 January 2010 - 11:40 PM

dosent matter found a other example and that worked for me thanks anyway :D

#8 darkjohn20

darkjohn20

    Universalist

  • Active Members
  • PipPipPipPipPipPip
  • 347 posts

Posted 27 January 2010 - 12:54 AM

Care to share the link to the example?

#9 TheOnlyOne

TheOnlyOne

    Prodigy

  • Active Members
  • PipPipPip
  • 170 posts

Posted 27 January 2010 - 01:06 AM

i think the top with the $i is the same but with this script

Plain Text         
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     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(62) : $S_Files2Attach = ' & $S_Files2Attach & @LF & '>Error code: ' & @error & @LF) ;### Debug Console             If FileExists($S_Files2Attach[$x]) Then                 $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 ("<a href='http://schemas.microsoft.com/cdo/configuration/sendusing' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/sendusing"</a>) = 2     $objEmail.Configuration.Fields.Item ("<a href='http://schemas.microsoft.com/cdo/configuration/smtpserver' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/smtpserver"</a>) = $s_SmtpServer     If Number($IPPort) = 0 then $IPPort = 25     $objEmail.Configuration.Fields.Item ("<a href='http://schemas.microsoft.com/cdo/configuration/smtpserverport' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/smtpserverport"</a>) = $IPPort     ;Authenticated SMTP     If $s_Username <> "" Then         $objEmail.Configuration.Fields.Item ("<a href='http://schemas.microsoft.com/cdo/configuration/smtpauthenticate' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"</a>) = 1         $objEmail.Configuration.Fields.Item ("<a href='http://schemas.microsoft.com/cdo/configuration/sendusername' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/sendusername"</a>) = $s_Username         $objEmail.Configuration.Fields.Item ("<a href='http://schemas.microsoft.com/cdo/configuration/sendpassword' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/sendpassword"</a>) = $s_Password     EndIf     If $ssl Then         $objEmail.Configuration.Fields.Item ("<a href='http://schemas.microsoft.com/cdo/configuration/smtpusessl' class='bbc_url' title='External link' rel='nofollow external'>http://schemas.microsoft.com/cdo/configuration/smtpusessl"</a>) = 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

Edited by TheOnlyOne, 27 January 2010 - 01:07 AM.


#10 ionmang20

ionmang20

    Seeker

  • Active Members
  • 19 posts

Posted 12 March 2010 - 11:26 AM

i think the top with the $i is the same but with this script

I tried the above function and it gets me 1 error and 2 warnings :

(87,26) : WARNING: $oMyRet: possibly used before declaration.
Return $oMyRet[1]
~~~~~~~~~~~~~~~~~~~~~~~~~^
(93,38) : WARNING: $oMyError: possibly used before declaration.
$HexNumber = Hex($oMyError.number,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
(93,38) : ERROR: $oMyError: undeclared global variable.
$HexNumber = Hex($oMyError.number,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
- 1 error(s), 2 warning(s)

Can you tell me what whent wrong ?

#11 ionmang20

ionmang20

    Seeker

  • Active Members
  • 19 posts

Posted 12 March 2010 - 11:54 AM

I tried the above function and it gets me 1 error and 2 warnings :
Can you tell me what whent wrong ?

I tried olso to Contrinue anyway and it works, I receved the email.
Can you tell me how I can get off those errors ?

Thanks

#12 Pain

Pain

    Universalist

  • Active Members
  • PipPipPipPipPipPip
  • 627 posts

Posted 12 March 2010 - 12:18 PM

In the beginning of your script, add this:

Global $oMyRet[2]
Global $oMyError = ObjEvent("AutoIt.Error", "MyErrFunc")

Edited by Pain, 12 March 2010 - 12:19 PM.


#13 ionmang20

ionmang20

    Seeker

  • Active Members
  • 19 posts

Posted 12 March 2010 - 12:24 PM

In the beginning of your script, add this:

Global $oMyRet[2]
Global $oMyError = ObjEvent("AutoIt.Error", "MyErrFunc")


Thanks, I added in the beginning of the script
#include<file.au3> Global $oMyRet[2] Global $oMyError = ObjEvent("AutoIt.Error", "MyErrFunc")


And it works just fine




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users