Re: [twsocket] TFtpCli and FTP server in passive mode
Hello François, Le 13/05/2011 08:01, Francois PIETTE a écrit : Hello Fabrice, I can send you login and password to test on a private mail if you want. This FTP server (Filezilla) work fine with a filezilla client. I have received it and I was able to test your FTP server. I can reproduce the error and found what the error is. It was shown in all your messages from start but I didn't noticed it ! The answer for PASV command is wrong. The answer starts with the code 27 while it should start with code 227. Your server replies: 27 Entering Passive Mode (213,56,128,2,5,95) While it should reply: 227 Entering Passive Mode (213,56,128,2,5,95) The component expect response code 227 which never comes. It may work with other FTP client which do not check the response as ICS does. I checked with FileZilla client which also obviously receive the 27 response but it is accepted. This is defenitely not a problem with ICS but from YOUR SERVER. You should find out why your server has a bad answer to the PASV command. Maybe you have edited the the message file of your server ? I have asked to our System Administrator : It's seems to be a problem with the Ftp-helper of pfense (open source Firewall) which return 27. We are looking for a solution to avoid this. Thank you for your help. Best regards, - Fabrice -- francois.pie...@overbyte.be The author of the freeware multi-tier middleware MidWare The author of the freeware Internet Component Suite (ICS) http://www.overbyte.be - Original Message - From: Fabrice Vendé techni...@infocob.com To: ICS support mailing twsocket@elists.org; Technique INFOCOB techni...@infocob.com Sent: Thursday, May 12, 2011 6:26 PM Subject: Re: [twsocket] TFtpCli and FTP server in passive mode Le 12/05/2011 17:42, Francois PIETTE a écrit : I have tested your code and it works perfectly from here. Here is the log using YOUR code and ICS-V7 updated form SVN repository right now: I have downloaded and installed the last update (http://wiki.overbyte.be/arch/icsv7w.zip) on my Delphi 2010. And I have exactly the same problem. TftpClient.put seems to be ignored. The differences between your test and mine are: 1) I updated my ICS source code from SVN reporistory (I mean using SVN client, not downloading the snapshot). Should not make any difference. 2) I'm using Delphi XE. 3) I made a small application while it looks this is part of a larger application. I have just tested on Delphi XE with exactly the same result ! I'am using ICS (FTP, http and Tsmtp) components since more than 10 years I have no problem on FTP server which allows Active mode. This new problem is only in Passive mode. Since something wrong from the large application could corrupt code anywhere, I suggest you build a new trivial application with the code and try it alone. You may also try the demo application FtpTst provided with ICS. Already tested with same problem. Since what you want to do is so basic, it is extremely improbable that you found a bug in ICS. There must be something special on your computer. Maybe a path problem where you use an old ICS version ? Maybe some dcu floating around ? Also maybe there is a bug in Delphi 2010. Have you installed all updates ? I have tried on Delphi 2006 and Delphi 2010 in ICS version 6 and ICS Version 7 and last daily Build. On Delphi XE with last Daily build. My Delphi 2006 and 2010 are not on the same computer. My Delphi 2006 is on a Windows 7 pro 32 bits. My Delphi 2010 and Delphi XE are on the same computer (Windows 7 pro 64 bits). I have tried another way I do this : procedure TForm8.icsClick(Sender: TObject); begin FtpClient1.HostName:=site.text; FtpClient1.username:=login.text; FtpClient1.password:=password.text; FtpClient1.Passive:=true; FRunning:=true; FtpClient1.connect; end; And use event OnRequestDone : procedure TForm8.FtpClient1RequestDone(Sender: TObject; RqType: TFtpRequest; ErrCode: Word); begin if (ErrCode 0) and (ErrCode 1) then begin FlastErreur:='Requete effectuée Rq=' + IntToStr(Ord(RqType)) + ' Erreur='+ FtpClient1.ErrorMessage; AjouterLog(FlastErreur); end else begin FlastErreur:= 'Requete effectuée Rq=' + IntToStr(Ord(RqType)) + ' Erreur='+ IntToStr(ErrCode); AjouterLog(FlastErreur); if ErrCode=0 then FlastErreur:=''; end; if not FRunning then Exit; case RqType of ftpConnectAsync: begin ftpclient1.User; end; ftpUserAsync: ftpclient1.pass; ftpPassAsync: begin ftpclient1.HostDirName:='.'; ftpclient1.Cwd; end; ftpCwdAsync:begin FtpClient1.LocalFileName:='h:\test.txt'; FtpClient1.HostFileName:='test.txt'; ftpclient1.put
Re: [twsocket] TFtpCli and FTP server in passive mode
Le 12/05/2011 14:20, Francois PIETTE a écrit : I have tested your code and it works perfectly from here. Here is the log using YOUR code and ICS-V7 updated form SVN repository right now: Hello Francois, I have downloaded and installed the last update (http://wiki.overbyte.be/arch/icsv7w.zip) on my Delphi 2010. And I have exactly the same problem. TftpClient.put seems to be ignored. With this code : procedure TForm8.icsClick(Sender: TObject); begin FtpClient1.HostName:=site.text; FtpClient1.username:=login.text; FtpClient1.password:=password.text; FtpClient1.Passive:=true; FtpClient1.connect; FtpClient1.HostDirName :='.'; FtpClient1.cwd; FtpClient1.LocalFileName:='h:\test.txt'; FtpClient1.HostFileName:='test.txt'; // FtpClient1.Passive:=true; - with this no change FtpClient1.put; FtpClient1.Quit; end; I have this result : 220-FileZilla Server version 0.9.37 beta 220-written by Tim Kosse (tim.ko...@gmx.de) 220 Please visit http://sourceforge.net/projects/filezilla/ USER username USER username 331 Password required for cob PASS * PASS 230 Logged on CWD . CWD . 250 CWD successful. / is current directory. PASV PASV 27 Entering Passive Mode (213,56,128,2,5,73) QUIT QUIT 221 Goodbye My components properties : object FtpClient1: TFtpClient Timeout = 15 MultiThreaded = False Port = 'ftp' CodePage = 0 DataPortRangeStart = 0 DataPortRangeEnd = 0 LocalAddr = '0.0.0.0' DisplayFileFlag = False Binary = True ShareMode = ftpShareExclusive Options = [ftpAcceptLF] ConnectionType = ftpDirect ProxyPort = 'ftp' Language = 'EN' OnDisplay = FtpClient1Display OnDisplayFile = FtpClient1DisplayFile OnCommand = FtpClient1Command OnError = FtpClient1Error OnRequestDone = FtpClient1RequestDone OnStateChange = FtpClient1StateChange BandwidthLimit = 1 BandwidthSampling = 1000 Left = 192 Top = 152 end Put work in active mode but FTP server give me an error 425... 220-FileZilla Server version 0.9.24 beta 220 Micro$oft free USER fpiette 331 Password required for fpiette PASS *** 230 Logged on CWD . 250 CWD successful. / is current directory. TYPE I 200 Type set to I PASV 227 Entering Passive Mode (193,200,60,61,8,1) ! Upload Size 45 STOR DeleteMe.txt 150 Connection accepted 226 Transfer OK ! 45bytes received/sent in 62 milliseconds QUIT 221 Goodbye Regards, -- Fabrice Vendé techni...@infocob.com mailto:techni...@infocob.com http://www.infocob.com/ SARL Infocob http://www.infocob.com/ 154 avenue de Talmont BP20076 85102 Les Sables d'Olonne Cedex -- 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
Re: [twsocket] TFtpCli and FTP server in passive mode
Le 12/05/2011 17:09, Graham Powell a écrit : When are you doing the PUT? In that routine after the CWD Yes in the routine after the CWD like I do on FTP server which allows active mode. I don't use Event TftpClient.OnRequestDone. Must I wait for something ? I have tried to add : while FtpClient1.StateftpReady do begin application.ProcessMessages; end; After each command without better result. or are you waiting for the RequestDone from the CWD? Graham -Original Message- From: twsocket-boun...@elists.org [mailto:twsocket-boun...@elists.org] On Behalf Of Fabrice Vendé Sent: 12 May 2011 15:40 To: ICS support mailing Subject: Re: [twsocket] TFtpCli and FTP server in passive mode Le 12/05/2011 14:20, Francois PIETTE a écrit : I have tested your code and it works perfectly from here. Here is the log using YOUR code and ICS-V7 updated form SVN repository right now: Hello Francois, I have downloaded and installed the last update (http://wiki.overbyte.be/arch/icsv7w.zip) on my Delphi 2010. And I have exactly the same problem. TftpClient.put seems to be ignored. With this code : procedure TForm8.icsClick(Sender: TObject); begin FtpClient1.HostName:=site.text; FtpClient1.username:=login.text; FtpClient1.password:=password.text; FtpClient1.Passive:=true; FtpClient1.connect; FtpClient1.HostDirName :='.'; FtpClient1.cwd; FtpClient1.LocalFileName:='h:\test.txt'; FtpClient1.HostFileName:='test.txt'; // FtpClient1.Passive:=true;- with this no change FtpClient1.put; FtpClient1.Quit; end; I have this result : 220-FileZilla Server version 0.9.37 beta 220-written by Tim Kosse (tim.ko...@gmx.de) 220 Please visit http://sourceforge.net/projects/filezilla/ USER username USER username 331 Password required for cob PASS * PASS 230 Logged on CWD . CWD . 250 CWD successful. / is current directory. PASV PASV 27 Entering Passive Mode (213,56,128,2,5,73) QUIT QUIT221 Goodbye My components properties : object FtpClient1: TFtpClient Timeout = 15 MultiThreaded = False Port = 'ftp' CodePage = 0 DataPortRangeStart = 0 DataPortRangeEnd = 0 LocalAddr = '0.0.0.0' DisplayFileFlag = False Binary = True ShareMode = ftpShareExclusive Options = [ftpAcceptLF] ConnectionType = ftpDirect ProxyPort = 'ftp' Language = 'EN' OnDisplay = FtpClient1Display OnDisplayFile = FtpClient1DisplayFile OnCommand = FtpClient1Command OnError = FtpClient1Error OnRequestDone = FtpClient1RequestDone OnStateChange = FtpClient1StateChange BandwidthLimit = 1 BandwidthSampling = 1000 Left = 192 Top = 152 end Put work in active mode but FTP server give me an error 425... 220-FileZilla Server version 0.9.24 beta 220 Micro$oft free USER fpiette 331 Password required for fpiette PASS *** 230 Logged on CWD . 250 CWD successful. / is current directory. TYPE I 200 Type set to I PASV 227 Entering Passive Mode (193,200,60,61,8,1) ! Upload Size 45 STOR DeleteMe.txt 150 Connection accepted 226 Transfer OK ! 45bytes received/sent in 62 milliseconds QUIT 221 Goodbye Regards, -- Fabrice Vendé techni...@infocob.commailto:techni...@infocob.com http://www.infocob.com/ SARL Infocobhttp://www.infocob.com/ 154 avenue de Talmont BP20076 85102 Les Sables d'Olonne Cedex -- 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 -- 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 -- Fabrice Vendé techni...@infocob.com mailto:techni...@infocob.com http://www.infocob.com/ SARL Infocob http://www.infocob.com/ 154 avenue de Talmont BP20076 85102 Les Sables d'Olonne Cedex -- 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
Re: [twsocket] TFtpCli and FTP server in passive mode
Le 12/05/2011 17:42, Francois PIETTE a écrit : I have tested your code and it works perfectly from here. Here is the log using YOUR code and ICS-V7 updated form SVN repository right now: I have downloaded and installed the last update (http://wiki.overbyte.be/arch/icsv7w.zip) on my Delphi 2010. And I have exactly the same problem. TftpClient.put seems to be ignored. The differences between your test and mine are: 1) I updated my ICS source code from SVN reporistory (I mean using SVN client, not downloading the snapshot). Should not make any difference. 2) I'm using Delphi XE. 3) I made a small application while it looks this is part of a larger application. I have just tested on Delphi XE with exactly the same result ! I'am using ICS (FTP, http and Tsmtp) components since more than 10 years I have no problem on FTP server which allows Active mode. This new problem is only in Passive mode. Since something wrong from the large application could corrupt code anywhere, I suggest you build a new trivial application with the code and try it alone. You may also try the demo application FtpTst provided with ICS. Already tested with same problem. Since what you want to do is so basic, it is extremely improbable that you found a bug in ICS. There must be something special on your computer. Maybe a path problem where you use an old ICS version ? Maybe some dcu floating around ? Also maybe there is a bug in Delphi 2010. Have you installed all updates ? I have tried on Delphi 2006 and Delphi 2010 in ICS version 6 and ICS Version 7 and last daily Build. On Delphi XE with last Daily build. My Delphi 2006 and 2010 are not on the same computer. My Delphi 2006 is on a Windows 7 pro 32 bits. My Delphi 2010 and Delphi XE are on the same computer (Windows 7 pro 64 bits). I have tried another way I do this : procedure TForm8.icsClick(Sender: TObject); begin FtpClient1.HostName:=site.text; FtpClient1.username:=login.text; FtpClient1.password:=password.text; FtpClient1.Passive:=true; FRunning:=true; FtpClient1.connect; end; And use event OnRequestDone : procedure TForm8.FtpClient1RequestDone(Sender: TObject; RqType: TFtpRequest; ErrCode: Word); begin if (ErrCode 0) and (ErrCode 1) then begin FlastErreur:='Requete effectuée Rq=' + IntToStr(Ord(RqType)) + ' Erreur='+ FtpClient1.ErrorMessage; AjouterLog(FlastErreur); end else begin FlastErreur:= 'Requete effectuée Rq=' + IntToStr(Ord(RqType)) + ' Erreur='+ IntToStr(ErrCode); AjouterLog(FlastErreur); if ErrCode=0 then FlastErreur:=''; end; if not FRunning then Exit; case RqType of ftpConnectAsync: begin ftpclient1.User; end; ftpUserAsync: ftpclient1.pass; ftpPassAsync: begin ftpclient1.HostDirName:='.'; ftpclient1.Cwd; end; ftpCwdAsync:begin FtpClient1.LocalFileName:='h:\test.txt'; FtpClient1.HostFileName:='test.txt'; ftpclient1.put; end; ftpPutAsync: ftpclient1.Quit; ftpQuitAsync: begin AjouterLog('Effectuée !'); FRunning := FALSE; end; end; end; But I have exactly the quasi the same problem, but that is new it that I get an ErrCode=27 : Log are : 220-FileZilla Server version 0.9.37 beta 220-written by Tim Kosse (tim.ko...@gmx.de) 220 Please visit http://sourceforge.net/projects/filezilla/ USER cob USER cob FTP component already connected 331 Password required for cob Requete effectuée Rq=5 Erreur=0 USER username USER username 331 Password required for username Requete effectuée Rq=2 Erreur=0 PASS ** PASS *** 230 Logged on Requete effectuée Rq=3 Erreur=0 CWD . CWD . 250 CWD successful. / is current directory. Requete effectuée Rq=4 Erreur=0 PASV PASV 27 Entering Passive Mode (213,56,128,2,5,95) Requete effectuée Rq=18 Erreur=27 Entering Passive Mode (213,56,128,2,5,95) QUIT QUIT 221 Goodbye Requete effectuée Rq=15 Erreur=0 Effectuée ! What means ErrCode= 27 ? Put command is handled but become an Pasv command... I can send you login and password to test on a private mail if you want. This FTP server (Filezilla) work fine with a filezilla client. -- francois.pie...@overbyte.be The author of the freeware multi-tier middleware MidWare The author of the freeware Internet Component Suite (ICS) http://www.overbyte.be -- 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 - Fabrice -- To unsubscribe or change your settings for TWSocket mailing list please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket Visit
[twsocket] TFtpCli and FTP server in passive mode
Hello, I have a problem to upload a file on some server which are only reachable in passive mode. Tested with a lot of version of ICS (V7, octobre 2010, V6 octobre 2009) and on Delphi 2006, 2007, 2010. In passive mode with Ftpclient.passivemode:=true; command put (same with get) seems to be ignored. I only do this : procedure TForm8.icsClick(Sender: TObject); begin FtpClient1.HostName:=site.text; FtpClient1.username:=login.text; FtpClient1.password:=password.text; FtpClient1.connect; FtpClient1.HostDirName :='.'; FtpClient1.cwd; FtpClient1.LocalFileName:='h:\test.txt'; FtpClient1.HostFileName:='test.txt'; FtpClient1.TypeBinary; FtpClient1.Passive:=true; FtpClient1.put; FtpClient1.Quit; end; Log returned by TFtpClient (useing TftpClient events) is : 220-FileZilla Server version 0.9.37 beta 220-written by Tim Kosse (tim.ko...@gmx.de) 220 Please visit http://sourceforge.net/projects/filezilla/ USER auser USER auser 331 Password required for auser PASS apass PASS apass 230 Logged on CWD . CWD . 250 CWD successful. / is current directory. TYPE I TYPE I 200 Type set to I PASV PASV 27 Entering Passive Mode (213,56,128,2,4,27) QUIT QUIT 221 Goodbye In active mode without the line FtpClient1.Passive:=true; I Have : 220-FileZilla Server version 0.9.37 beta 220-written by Tim Kosse (tim.ko...@gmx.de) 220 Please visit http://sourceforge.net/projects/filezilla/ USER auser USER auser 331 Password required for auser PASS apass PASS apass 230 Logged on CWD . CWD . 250 CWD successful. / is current directory. TYPE I TYPE I 200 Type set to I PORT 192,168,1,13,195,101 PORT 192,168,1,13,195,101 200 Port command successful ! Upload Size 2,08K STOR test.txt STOR test.txt 150 Opening data channel for file transfer. 425 Can't open data connection. ! STOR Failed QUIT QUIT 221 Goodbye I get an error 425 Can't open data connection. ! So how to set passive mode and upload a file ? What I have missed ? Command like FtpClient1.dele works fine This FTP server work fine with a Filezilla client. Best regards, - Fabrice -- 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
Re: [twsocket] TSmtpCli and bad spam score
Le 03/09/2010 23:03, DZ-Jay a écrit : Fabrice, I do not have Delphi available at this moment, so could you test the code below to see if it is treated as spam by SpamAssassin? Hello, There is a tools to check SpamAssassin score here : http://www.mailingcheck.com/ Best regards, -- Fabrice Vendé techni...@infocob.com mailto:techni...@infocob.com http://www.infocob.com/ SARL Infocob http://www.infocob.com/ 154 avenue de Talmont BP20076 85102 Les Sables d'Olonne Cedex -- 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
Re: [twsocket] TSmtpCli and bad spam score
Le 03/09/2010 23:03, DZ-Jay a écrit : Fabrice, I do not have Delphi available at this moment, so could you test the code below to see if it is treated as spam by SpamAssassin? Hello, There is a tools to check SpamAssassin score here : http://www.mailingcheck.com/ Best regards, - Fabrice -- 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
Re: [twsocket] THtmlSmtpCli and inline image lost
Le 03/09/2010 09:51, Arno Garrels a écrit : Hello Fabrice, I just checked in revision #584, log: New property THtmlSmtpCli.HtmlImageCidSuffix which specifies a custom string to be appended to the default Content-ID IMAGEnumber. Some webmailer did not like our default CID. Thanks to Fabrice Vendé for providing a fix. Note that current ICS V7 moved to trunk: svn://svn.overbyte.be/ics/trunk or http://svn.overbyte.be:8443/svn/ics/trunk Hello Arno, Thanks to the ICS Team because the solution too add an optionally suffix string (Published) will not break existing development. Best regards, - Fabrice -- 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
[twsocket] THtmlSmtpCli Outlook Express and attachment problem
Hello, Outlook Express seems to have a problem to show attachment only in his email list (top of the Outlook Express windows). In detail of email we see that there is an attachment but not in the email list. Tested in all version of ICS and Delphi. I don't see this problem in other email client. I have found a fix to avoid this in OverbyteIcsSMtpProt.pas : Change : procedure THtmlSmtpCli.TriggerProcessHeader(HdrLines: TStrings); ... HdrLines[I] := 'Content-Type: multipart/related; ' + 'type=multipart/alternative;' ... To : procedure THtmlSmtpCli.TriggerProcessHeader(HdrLines: TStrings); ... HdrLines[I] := 'Content-Type: multipart/related; ' //+ //'type=multipart/alternative;' ... Outlook Express is always used but does anyone see this problem ? Best regards, - Fabrice -- 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
[twsocket] TSmtpCli and bad spam score
Hello, I have found something which give a very bad spam score in OverbyteIcsSmtpProt.pas. Tested with SpamAssassin for example in all version of ICS ans Delphi. I have found a solution in OverbyteIcsSmtpPro.pas : Change : procedure TCustomSmtpClient.Data; ... if FHdrPriority smtpPriorityNormal then begin FHdrLines.Add('Priority: urgent'); FHdrLines.Add('X-MSMail-Priority: High'); end else if FHdrPriority = smtpPriorityNormal then begin FHdrLines.Add('Priority: Normal'); FHdrLines.Add('X-MSMail-Priority: Normal'); end else begin FHdrLines.Add('Priority: non-urgent'); FHdrLines.Add('X-MSMail-Priority: Low'); end; ... to : procedure TCustomSmtpClient.Data; ... { if FHdrPriority smtpPriorityNormal then begin FHdrLines.Add('Priority: urgent'); FHdrLines.Add('X-MSMail-Priority: High'); end else if FHdrPriority = smtpPriorityNormal then begin FHdrLines.Add('Priority: Normal'); FHdrLines.Add('X-MSMail-Priority: Normal'); end else begin FHdrLines.Add('Priority: non-urgent'); FHdrLines.Add('X-MSMail-Priority: Low'); end; } ... So only put it in comment. These lines seems to be only for Microsoft client header but it increase bad SPAM score. Best regards, - Fabrice -- 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
Re: [twsocket] THtmlSmtpCli Outlook Express and attachment problem
Le 03/09/2010 14:42, Arno Garrels a écrit : I do not see this in OE v6 with default e-mail and MailSndHtml demo. If there is an attachment OE displays the paper clip for me, if there are only embedded images there's no paper clip visible. You true, this has been fixed somewhere after version 6.05 With this : procedure THtmlSmtpCli.TriggerProcessHeader(HdrLines: TStrings); ... if FEmailFiles.Count = 0 then // = by this line Which doesn't exists in version 6.05 Sorry for useless report, Best regards, - Fabrice -- 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
Re: [twsocket] THtmlSmtpCli and inline image lost
Hello, Try this In OverbyteIcsSmtpProt.pas Change : StrPCopy(PAnsiChar(MsgLine), 'Content-ID: IMAGE' + IcsIntToStrA(FImageNumber) + '') To : StrPCopy(PAnsiChar(MsgLine), 'Content-ID: IMAGE' + IcsIntToStrA(FImageNumber) + 'INCLD') Best regards, Le 30/08/2010 23:51, Xavier Mor-Mur a écrit : Hello I get also that with my private account. Also I get something like this with my account at work (server it's Atmail Webmail Client). Next there is result of some check I done using my htmlsmtcli program (using latest revision from svn): 15 images send to : - Orange and Atmail accounts : first 9 images are treated as multipart, next 6 images are treated as attached. - Gmail account : all images are displayed as multipart -- Fabrice Vendé techni...@infocob.com Mozilla Thunderbird http://www.infocob.com/ Développement, formation, matériel, logiciel -- 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
[twsocket] THtmlSmtpCli and inline image lost
Hello, I have a strange problem with THtmlSmtpCli in ICS-V7 Distribution (Sep 12, 2009 or last SVN built Revision 579), or ICS-V6 Distribution (Sep 12, 2009) on Delphi 2007 or 2010. When I send an email with more than 10 inline images (multipart), images after the 9th are not displayed on Orange webmail. It work fine on other webmail like Gmail or Hotmail. It work fine with Indy SMTP component are any email client. It's only a THtmlSmtpCli problem. Like if Orange Webmail don't like TSmtpCli content and cut after more than 9 inline images. It can be easily tested with OverbyteIcsMailHtml.dpr (in http://svn.overbyte.be:8443/svn/ics/branches/icsv7/Delphi/Internet/ ) with more than 10 inline image send to an Orange webmail. Nevertheless I have found a solution which work fine : In OverbyteIcsSmtpProt.pas Change : StrPCopy(PAnsiChar(MsgLine), 'Content-ID: IMAGE' + IcsIntToStrA(FImageNumber) + '') To : StrPCopy(PAnsiChar(MsgLine), 'Content-ID: IMAGE' + IcsIntToStrA(FImageNumber) + 'INCLD') Does Content-ID: IMAGE10 is to basic or already use for another thing in Orange web client ? Best regards, - Fabrice -- 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
[twsocket] multipart/alternative et Outlook Express
Hello, I have some problem with THtmlSmtpCli and Outlook Express. Not under Thunderbird. Attachment are not visible or are partially visible. Problem comme from multipart/alternative header : Mime-Version: 1.0 Content-Type: multipart/related; type=multipart/alternative; boundary==_NextPart_000_000C85DF_0.2F097BB1 Date: Tue, 21 Apr 2009 09:05:34 +0200 Message-ID: 20090421070534156.5e596b2c30b81...@fabrice X-Mailer: ICS SMTP Component V2.55 If I manualy remplace multipart/related by multipart/mixed (in .eml mail received) it work fine. If you want a sample only use then default MailHtml.dpr on OverbyteIcsV5.zip archive (Delphi\Internet path). Tested with SMTPprot.pas version 2.55. Outlook Express not handle well multipart/alternative. This is a problem because a lot of user use Outlook Express. To avoid this problem how to force multipart/mixed like we can do in Indy : http://www.developpez.net/forums/d83557/environnements-developpement/delphi/web-reseau/indy10-tidmessage-piece-jointe-envoyee-invisible/ Best regards, -- Fabrice Vendé techni...@infocob.com Mozilla Thunderbird http://www.infocob.com/ Développement, formation, matériel, logiciel -- 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