Zaoka Posted April 6, 2022 Posted April 6, 2022 (edited) On 10/29/2018 at 2:46 PM, Jos said: I doubt it will ever work when your (companies) proxy doesn't allow port 465. Jos HI, for couple of years I'm using Jos script for sending reports, email with excel attachment. But from last week i'm getting this error when sending excel or word attachment message has lines too long for transport jpeg, pdf works with no problems, any sugestion ? Edited April 6, 2022 by Zaoka
Developers Jos Posted April 6, 2022 Developers Posted April 6, 2022 (edited) Just search for that messages & vbscript and you get hits enough to investigate. check this one: https://stackoverflow.com/questions/28874615/send-email-using-vbscript which also points to : https://support.microsoft.com/en-us/topic/you-receive-a-500-5-5-0-syntax-error-line-too-long-non-delivery-report-when-you-send-an-e-mail-activity-by-using-the-microsoft-crm-web-client-or-microsoft-crm-sales-for-outlook-455c8df1-d1e2-858b-833a-367194a082f9 EDIT: I have spilt of your question into its own thread as it really is a separate issue. Edited April 6, 2022 by Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past.
Zaoka Posted April 6, 2022 Author Posted April 6, 2022 (edited) 28 minutes ago, Jos said: Just search for that messages & vbscript and you get hits enough to investigate. check this one: https://stackoverflow.com/questions/28874615/send-email-using-vbscript which also points to : https://support.microsoft.com/en-us/topic/you-receive-a-500-5-5-0-syntax-error-line-too-long-non-delivery-report-when-you-send-an-e-mail-activity-by-using-the-microsoft-crm-web-client-or-microsoft-crm-sales-for-outlook-455c8df1-d1e2-858b-833a-367194a082f9 EDIT: I have spilt of your question into its own thread as it really is a separate issue. Thanks for reply, not sure what to do with this info 😀 If i understood correctly i need to check if i have office update on PC that i use for script. just check, i don't have outlook installed on that PC 🤔 Edited April 6, 2022 by Zaoka
Developers Jos Posted April 6, 2022 Developers Posted April 6, 2022 You need to check the length of the text you are trying to send is what i get out of that. If you want help with this you need to post a replicator script so we can have a look. SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past.
Zaoka Posted April 6, 2022 Author Posted April 6, 2022 Just now, Jos said: You need to check the length of the text you are trying to send is what i get out of that. If you want help with this you need to post a replicator script so we can have a look. There is no text in mail, just attachment expandcollapse popup;################################## ; Variables ;################################## $SmtpServer = "mail.xxxx-xxxx.com" ; address for the smtp-server to use - REQUIRED $FromName = "Zaoka" ; name from who the email was sent $FromAddress = "zaoka.zaoka@xxxx-xxxx.com" ; address from where the mail should come $ToAddress = "zaokaxxxx@gmail.com" ; destination address of the email - REQUIRED $Subject = "test" ; subject from the email - can be anything you want it to be $Body = "" $AttachFiles = "C:\Users\Zaoka\Desktop\test.xlsx" ; the file(s) you want to attach seperated with a ; (Semicolon) - leave blank if not needed $CcAddress = "" ; address for cc - leave blank if not needed $BccAddress = "" ; address for bcc - leave blank if not needed $Importance = "Normal" ; Send message priority: "High", "Normal", "Low" $Username = "xxxxxx" ; username for the account used from where the mail gets sent - REQUIRED $Password = "xxxxxx" ; password for the account used from where the mail gets sent - REQUIRED $IPPort = 465 ; port used for sending the mail $ssl = 1 ; 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 : $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
Developers Jos Posted April 6, 2022 Developers Posted April 6, 2022 Could you try adding some text to the message too to see if that makes a difference? SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past.
Zaoka Posted April 6, 2022 Author Posted April 6, 2022 No difference, empty mails with no attachment and no text works ok, mail with some text and no attachment works ok mails with attachment .xlsx,xlsb,xlsm,.zip,.rar (100kb max ) are send but after 10min i receive error message "message has lines too long for transport". I tested , .jpg and .png attachemnt (1mb) works , access file works 🤔
Developers Jos Posted April 6, 2022 Developers Posted April 6, 2022 So this error is in a Email and not during the run of the script? Have you tried: using a different "From" provider? using a different to provider? just to start figuring out where the error is caused? SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past.
Zaoka Posted April 6, 2022 Author Posted April 6, 2022 yes, i tried using different from provider (gmail) all works ok. I tried different to provider , works for email addresses from the same domain, but does not work for others including gmail
Zaoka Posted April 7, 2022 Author Posted April 7, 2022 Hi, after some more testing, i found out that the problem is with latest cpanel update https://support.cpanel.net/hc/en-us/articles/4420121088919-Exim-4-95-message-has-lines-too-long-for-transport-Error https://forums.cpanel.net/threads/problem-cpanel-39824-message-has-lines-too-long-for-transport-since-january-21-2022.697449/page-6 Our provider did made some changes on message_linelength_limit and now everything is the same as it was
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now