Hallo Allemaal,
Ik heb een kleine applicatie draaien, die die simpel weg wat bestanden kopieërd,
Packaged (d.m.v. WinRar) ik creër hier bestanden van 10Mb max. en daarna wordt het verstuurd via email (d.m.v. een attachment).Nu heb ik deze applicatie draaiend zonder problemen op vb.net 9.0.
Pas geleden ben ik de applicatie gaan herzien, omdat ik wat andere inzichten heb en ik persoonlijk denk dat er nog ruimte is voor verbetering. Nu heb ik gekozen voor vb.net 10.0, Ik heb de verzend code van de mail gelijk gehouden (onderstaand).
Nu krijg ik een foutmelding die ik zelf niet begrijp.In eerste instantie dacht ik dat de file "in use"(locked) bleef, dit heb ik inmiddels afgevangen met een functie die check of ik read/write acces heb voordat de applicatie verder gaat.Dit is dus ook niet het geval. Dus ik denk ik dump de ex.messages naar mijn errorhandler en kijk of ik wat zinnigs kan vinden, maar ik kom er geen wijs uit.Ook omdat het onder vb.net 9.0 gewoon werkt zonder problemen. En onze mail server staat afgeregeld zodat bestanden tot 12Mb verzonden kunnen worden, de applicatie packaged ze tot 10Mb dus de groote kan het ook niet zijn i.m.o. Wat wel opvalt als de mails een grote hebben van 3Mb er geen problemen optreden. ( wat toch weer zou duiden op de grote van het bestand).
Foutmelding:
The following Error Acourded: Dellivery Failure:SystemFailure sending mail.SystemSystem.IndexOutOfRangeException: Index was outside the bounds of the array.
at System.Net.Base64Stream.EncodeBytes(Byte[] buffer, Int32 offset, Int32 count, Boolean dontDeferFinalBytes, Boolean shouldAppendSpaceToCRLF)
at System.Net.Base64Stream.Write(Byte[] buffer, Int32 offset, Int32 count)
at System.Net.Mime.MimePart.Send(BaseWriter writer)
at System.Net.Mime.MimeMultiPart.Send(BaseWriter writer)
at System.Net.Mail.SmtpClient.Send(MailMessage message)
Heeft iemand een idee wat hier mis gaat ?
Alvast bedankt,
Groeten Bas
Ik heb een kleine applicatie draaien, die die simpel weg wat bestanden kopieërd,
Packaged (d.m.v. WinRar) ik creër hier bestanden van 10Mb max. en daarna wordt het verstuurd via email (d.m.v. een attachment).Nu heb ik deze applicatie draaiend zonder problemen op vb.net 9.0.
Pas geleden ben ik de applicatie gaan herzien, omdat ik wat andere inzichten heb en ik persoonlijk denk dat er nog ruimte is voor verbetering. Nu heb ik gekozen voor vb.net 10.0, Ik heb de verzend code van de mail gelijk gehouden (onderstaand).
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| imports system.net.mail Dim smtpserver As New SmtpClient() Dim Mail As New MailMessage() Dim AttachmentFile As New Attachment(Filename) Dim MailBody As String = "blablabla" smtpserver.Host = "blablabla" Mail.Attachments.Add(AttachmentFile) Mail.From = New MailAddress("fail@vb.net") Mail.To.Add ("Tofail@vb.net") Mail.Subject = (MailSubject) Mail.Body = (MailBody) Try smtpserver.Send(Mail) Catch ex As Exception ErrorHandling.ErrorLoggingWrite("Dellivery Failure:" + ex.Source + ex.Message + ex.Source.ToString + ex.InnerException.ToString, False) End Try |
Nu krijg ik een foutmelding die ik zelf niet begrijp.In eerste instantie dacht ik dat de file "in use"(locked) bleef, dit heb ik inmiddels afgevangen met een functie die check of ik read/write acces heb voordat de applicatie verder gaat.Dit is dus ook niet het geval. Dus ik denk ik dump de ex.messages naar mijn errorhandler en kijk of ik wat zinnigs kan vinden, maar ik kom er geen wijs uit.Ook omdat het onder vb.net 9.0 gewoon werkt zonder problemen. En onze mail server staat afgeregeld zodat bestanden tot 12Mb verzonden kunnen worden, de applicatie packaged ze tot 10Mb dus de groote kan het ook niet zijn i.m.o. Wat wel opvalt als de mails een grote hebben van 3Mb er geen problemen optreden. ( wat toch weer zou duiden op de grote van het bestand).

Foutmelding:
The following Error Acourded: Dellivery Failure:SystemFailure sending mail.SystemSystem.IndexOutOfRangeException: Index was outside the bounds of the array.
at System.Net.Base64Stream.EncodeBytes(Byte[] buffer, Int32 offset, Int32 count, Boolean dontDeferFinalBytes, Boolean shouldAppendSpaceToCRLF)
at System.Net.Base64Stream.Write(Byte[] buffer, Int32 offset, Int32 count)
at System.Net.Mime.MimePart.Send(BaseWriter writer)
at System.Net.Mime.MimeMultiPart.Send(BaseWriter writer)
at System.Net.Mail.SmtpClient.Send(MailMessage message)
Heeft iemand een idee wat hier mis gaat ?
Alvast bedankt,
Groeten Bas
[ Voor 0% gewijzigd door Verwijderd op 03-05-2011 10:33 . Reden: Added smtpserver to code (vergeten) ]