7 votes

ASP classique envoyant des e-mails avec authentification SMTP

Nous avons hérité d'un site ASP classique d'une agence de conception qui voulait simplement que nous fassions un "search and replace" pour changer les hôtes SMTP. Pas de problème, nous sommes un atelier PHP mais nous pouvons nous occuper de la plupart des choses.

Une enquête plus approfondie a révélé que nous devions nous authentifier auprès du nouveau serveur SMTP.

Un peu de recherche sur Google nous a conduit à penser qu'il utilise ASPMail 4 et que, selon la documentation, il ne fait pas d'authentification.

http://www.serverobjects.com/comp/Aspmail4.htm

Nous venons de googler "SMTPsvg.Mailer" à partir de cet appel :

Set Mailer = Server.CreateObject("SMTPsvg.Mailer")

Ai-je raison de supposer que ce qui précède est ASPMail 4, et que l'APSMAil ne fait pas d'authentification ?

Que puis-je utiliser pour m'authentifier auprès d'un serveur SMTP si je dois remplacer Aspmail ?

20voto

Joost Moesker Points 425

Comme indiqué, utilisez le CDO.

set config = CreateObject("CDO.Configuration")
sch = "http://schemas.microsoft.com/cdo/configuration/"
with config.Fields
 .item(sch & "sendusing") = 2 ' cdoSendUsingPort
 .item(sch & "smtpserver") = application("smtpserver")
 .item(sch & "smtpserverport") = application("smtpserverport")
 .item(sch & "smtpauthenticate") = 1 'basic auth
 .item(sch & "sendusername") = application("sendusername")
 .item(sch & "sendpassword") = application("sendpassword")
 .update
end with

with CreateObject("CDO.Message")
  .configuration = config
  .to = ...
  .from = ...
  .subject = ....
  .HTMLBody = ....
  call .send()
end with

Les documents relatifs à chaque champ de l'objet de configuration peuvent être consultés à l'adresse suivante ici !

2voto

Shoban Points 18742

Oui, c'est vrai. Pourquoi ne pas passer au CDO ? Cet article peut être d'une certaine aide.

Comment envoyer des e-mails avec CDO ?

1voto

Thomas Points 124

Vérifiez si l'hébergeur prend en charge le .Net Framework 2.0 (la plupart le font), si c'est le cas renommez le fichier .asp en .aspx, supprimez le code qui envoie l'e-mail et écrivez un code simple :

http://www.systemwebmail.com/faq/3.8.aspx

Salutations

Thomas

-3voto

Dave Swersky Points 25958

Selon les documents ici ASPMail 4.x ne prend pas en charge l'authentification. Il semble que vous deviez passer à un autre composant SMTP basé sur COM.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X