indy 9.00.14 / maildemo.dpr

Giganews Newsgroups
Subject: indy 9.00.14 / maildemo.dpr
Posted by:  Mike Simaska (mike.remove@this.lchsmusic.com)
Date: Tue, 27 Apr 2004

I am trying to learn to use Indy to automatically download and process
attachments from a POP3 mail box.  I am playing with the maildemo project
just to try to learn the ropes.  After dbl-clicking a msg header in the the
msg list box to download the message, the attachment names seem to appear ok
in the Attachment listbox.  When clicking on the attachment (just to see
what happens) the file name appears in a separate showmessage dialog.
However when the attachment is larger (>50k or so) the demo throws an
exception (which appears to me that to indicate that it can't process the
filename).
Is this a bug in Indy or just a incomplete demo code?

How do I get at the attachments listed in the demo?  It appears the download
email is sent the msg component.  The message component has a MessageParts
property containing either  TIdText or TIdAttachments.  Do I just walk down
this collection and use the SaveToFile method (with the FileName property)
on any messagepart that is a IIdAttachment?

----
mike

(from MadExcept...)

operating system  : Windows XP Service Pack 1
free disk space  : 32,62 GB
executable        : MailDemo.exe
exec. date/time  : 2004-04-27 23:17
exception class  : EAccessViolation
exception message : Access violation at address 77F5A912 in module
'ntdll.dll'. Read of address 008CAD8C.

main thread ($C98):
$77F5A90E ntdll.dll                RtlMultiByteToUnicodeN
$77D4492D user32.dll                MBToWCSEx
$77D657D5 user32.dll                DrawTextExA
$77D6579A user32.dll                DrawTextA
$00444BA4 MailDemo.exe Dialogs      CreateMessageDialog
$00444FB0 MailDemo.exe Dialogs      MessageDlgPosHelp
$00444F8A MailDemo.exe Dialogs      MessageDlgPos
$00445061 MailDemo.exe Dialogs      ShowMessagePos
$0044504E MailDemo.exe Dialogs      ShowMessage
$004B1F01 MailDemo.exe Main    433 TfrmMain.lvMessagePartsClick
$00475624 MailDemo.exe Controls    TControl.Click

Replies