hi Arno
the smtp server is my provider smtp relay ( TELECOM ITALIA) .it's public
smtp relay for each adsl connection .
Im my Outlook client i use it from the same dvelop PC and all mail with all
attachment < 10 Mb will sent OK.

so , i have put your code in your demo app ..and the result it's the same.

only if i check progress the email will sent ( with large attach)..

it's like during the submission process, if I insert a small delay the
server can process the email ( with large attach)..

in fact if i put a small loop in SmtpClientMessageDataSent procedure  or
sleep(150)  in myapp and  it send email correctly .with all attach.
but i can't do it in my real app , because there are a lot simultaneous
thread ..e it impact a lot in GUI and in run time process.













>
> but i have put a sleep(150) on SmtpClientDisplay procedure and all
> work well ..so this is fix..

I do not think so, there must be some reason for error #10004.

> it's how the send streaming it's so fast like the server want..

That's impossible you cannot send data too fast.

>
> without "fix" i receive this error ( but i can't use it because
> freeze my APP)

What's freezing the GUI is displaying the log messages in the Memo
that causes 100% CPU and slows down transfers dramatically.

>
> All message sent OK at the last after send file  i have this error
>
>>
>> --= Multipart Boundary 0305110951--
>> .
> RequestDone Rq=5 Error=10004
> RequestDone Rq=6 Error=0

Then the server probably drops the connection without a hint why.
If it were a good mail server the log would show something like:

{code}
>
> --= Multipart Boundary 0305111618--
.
> .
552 Message size exceeds fixed maximium message size
< 552 Message size exceeds fixed maximium message size
RequestDone Rq=5 Error: 552 Message size exceeds fixed maximium message size
Error, stoped All-In-One demo
RequestDone Rq=6 No Error
{code}


> i have see the calcmsg like you say but there isn't any example ...
> and  i don't know how use it in my procedure

There are multiple ways, this is just a simple example:

{code}
   case RqType of
       smtpConnect:
           begin
               SmtpClient.MessageSize := 0;
               SmtpClient.Ehlo;
           end;
       smtpEhlo:
           begin
               if SmtpClient.Username <> '' then
               begin
                   SmtpClient.AuthType := smtpAuthAutoSelect;
                   SmtpClient.Auth;
               end
               else if SmtpClient.SizeSupported then
                   SmtpClient.CalcMsgSize
               else
                   SmtpClient.MailFrom;
           end;
       smtpCalcMsgSize:
           SmtpClient.MailFromSIZE;
       smtpAuth:
           begin
               if SmtpClient.SizeSupported then
                   SmtpClient.CalcMsgSize
               else
                   SmtpClient.MailFrom;
           end;
       smtpMailFrom:
           SmtpClient.RcptTo;
       smtpRcptTo:
           SmtpClient.Data;
       smtpData:
           SmtpClient.Quit;
       smtpQuit:
           Display('All-In-One done !');
   end;
{code}

Note that like most samples it lacks proper error checks.

> i have see in your demo and you use it in PrepareProgressBar.
>
> so i have insert a procedure like PrepaeProgressBar and now it
> work...with all file...(i hope ..next day i test it with more file on
> large develop case)

That doesn't make sense IMO.

> conclusion
> i have reproduce it in your demo app...if i send a very small file
> all work without check progress bar
> with large file i need to check progress bar ...(same in my app)..
> i have see that this problem can repruduce with very larg body
> text..(html not testing but i think is the same)

It is very likely that the server accepts only a certain amount of
data from the same IP within some time frame. Try my example above
with the demo and see what happens.

>
> i think that calcmsg(sync) could be a default setting in your
> componet..when file attachment or body text is to large..

I don't think so, you are free to use it in designs like the
All-In-One demo.

--
Arno Garrels





------------------------------

_______________________________________________
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

End of TWSocket Digest, Vol 413, Issue 11
*****************************************
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Reply via email to