Email verzenden probleem

Status
Niet open voor verdere reacties.

hackie900

Gebruiker
Lid geworden
28 mrt 2009
Berichten
163
ik ben bezig met een programma dat elke 10 min. of korter of langer een email verstuurd met gegevens van hoe het programma werkt.
ik heb al veel email codes gevonden maar bij bijna elke staat als ik debug zonder fouten:
de transport functie kan geen verbinding maken met de server.

dit is mijn code:

Code:
Imports System.Web

Public Class Form1
    Dim l_mail As System.Web.Mail.MailMessage
    Dim l_file As System.Web.Mail.MailAttachment

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'hier stel je het smpt server adres in, in principe het adres van een een op machine bekende provider, in mijn geval hccnet
        System.Web.Mail.SmtpMail.SmtpServer = "smtp.live.com:587 "
        l_mail = New System.Web.Mail.MailMessage
        'voor meeste smtp servers is het van belang om voor die server geldig emailadres op te geven
        l_mail.From = "email@test.nl"
        l_mail.To = "email@test.nl"
        l_mail.Subject = "Log Files"
        'je kan bv. ook kiezen voor HTML formaat, je stopt dan html text in de body, in dit geval gewoon text
        l_mail.BodyFormat = Web.Mail.MailFormat.Text
        l_mail.Body = "Log Files"
        'optioneel kun je attachments toevoegen
        l_file = New Mail.MailAttachment("c:\log file.txt", Web.Mail.MailEncoding.UUEncode)
        l_mail.Attachments.Add(l_file)
        System.Web.Mail.SmtpMail.Send(l_mail)
        l_file = Nothing
        l_mail = Nothing
    End Sub
End Class

ik heb de email adressen express niet goed gedaan want niet iedereen hoeft dat email adres te weten. ik doe het via Live.nl dus de smtp server klopt.
dit is in een normale application maar ik heb het ook in een console application geprobeer en dat werkte ook niet.

Wie zou mij kunnen helpen?
 
Je gebruikt de System.Web.Mail classes, dat is het probleem:

Gebruik de classes uit deze namespace:

System.Net.Mail
 
als ik bij references kijk zie ik wel staan:
System.Net

maar als ik die doe is het pobleem nog niet opgelost...
sterker nog als ik dat doe blijven de fouten die er staan (de errors) ook niet weg...

Zie bijlagen...

I doe trouwens alles in vb 2008
 

Bijlagen

Laatst bewerkt:
Je moet alles aanpassen naar System.Net.Mail, dus heb ik in mijn oneindige goedheid :p,
jou code reeds aangepast:

Vergeet de import niet:

Code:
Imports System.Net.Mail

en dit is jou code:

Code:
        Dim l_mail As MailMessage
        Dim l_file As Attachment

        'hier stel je het smpt server adres in, in principe het adres van een een op machine bekende provider, in mijn geval hccnet
        Dim smtp As New SmtpClient("smtp.live.com", 587)
        l_mail = New MailMessage()
        'voor meeste smtp servers is het van belang om voor die server geldig emailadres op te geven
        l_mail.From = New MailAddress("email@test.nl")
        l_mail.To.Add(New MailAddress("email@test.nl"))
        l_mail.Subject = "Log Files"
        'je kan bv. ook kiezen voor HTML formaat, je stopt dan html text in de body, in dit geval gewoon text
        l_mail.IsBodyHtml = False
        l_mail.Body = "Log Files"
        'optioneel kun je attachments toevoegen
        l_file = New Attachment("c:\log file.txt")
        l_mail.Attachments.Add(l_file)

        smtp.Send(l_mail)
 
De foutmelding zegt dat je ofwel een secure connection nodig hebt:

Code:
smtp.EnableSsl = True

Of dat je login-gegevens fout zijn:

Code:
smtp.Credentials = New System.Net.NetworkCredential("username", "password")

deze moeten voor de smtp.Send() komen!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan