Je suis en train de mettre à jour mes pages Web d'asp classic vers asp.net. Mon code précédent utilisait CDO pour envoyer des emails.Aucune connexion n'a pu être établie car la machine cible l'a refusée activement
sch = "http://schemas.microsoft.com/cdo/configuration/"
Set cdoConfig = CreateObject("CDO.Configuration")
With cdoConfig.Fields
.Item(sch & "sendusing") = 2
.Item(sch & "smtpserver") = "mail.mydomain.com"
.update
End With
Set cdoMessage = CreateObject("CDO.Message")
strTo = "[email protected]"
strFrom = "[email protected]"
strSubject = "email subject"
strBody = strBody & "This is the email body"
With cdoMessage
Set .Configuration = cdoConfig
.From = strFrom
.To = strTo
.Subject = strSubject
.HTMLBody = strBody
.Send
End With
Set cdoConfig = Nothing
Set cdoMessage = Nothing
Ce code fonctionne bien, mais j'aimerais envoyer des courriels de mes pages asp.net. Lorsque j'envoie des pages .net, je reçois le message d'erreur: « Aucune connexion n'a pu être établie car la machine cible activement refusé xx.xx.xxx.xxx:2~~V~~singular~~3rd »
Mes paramètres web.config:
<system.net>
<mailSettings>
<smtp from="[email protected]">
<network host="mail.mydomain.com" port="2"/>
</smtp>
</mailSettings>
</system.net>
et la section de code qui me donne l'erreur:
Dim mailmsg As New MailMessage("[email protected]", txtSubmitterEmail.Text)
mailmsg.Subject = "subject here"
mailmsg.Body = "mail body here"
mailmsg.IsBodyHtml = True
Dim smtp As New SmtpClient
smtp.Send(mailmsg)
Je suis assez nouveau pour .Net mais j'ai cherché pendant des heures et ne peut pas trouver une raison pour laquelle l'ancien le code fonctionne mais pas le nouveau. Merci d'avance pour l'aide!
Si l'OP l'a manqué: lorsque le message d'erreur indique "xx.xx.xxx.xxx:2", le dernier numéro est le numéro de port. SMTP est conventionnellement sur le port 25. – Bevan
Merci! Ça a marché. Je n'ai pas essayé le port 25 car le code utilisant CDO fonctionnait avec le port 2. – zeroef