Varför får jag detta felet med nedan kod?
Jag har kollat så att det är värden överallt och att smptservern fungerar.
[B]External component has thrown an exception.[/B]
[B]Description[/B]: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
[B]Exception Details[/B]: System.Runtime.InteropServices.SEHException: External component has thrown an exception.
[B]Source Error[/B]:
Line 232: mail.Priority=System.Web.Mail.MailPriority.High;
Line 233: SmtpMail.SmtpServer=ConfigurationSettings.AppSettings["smtpserver"].ToString();
[red]Line 234: SmtpMail.Send(mail);[/red]
Source File: d:\blandat\inetpub\poapproveauthorder\default.aspx.cs Line: 234
Stack Trace:
[SEHException (0x80004005): External component has thrown an exception.]
System.RuntimeType.CreateInstanceImpl(Boolean publicOnly) +0
System.Activator.CreateInstance(Type type, Boolean nonPublic) +66
System.Activator.CreateInstance(Type type) +7
System.Web.Mail.LateBoundAccessHelper.CreateInstance()
System.Web.Mail.CdoSysHelper.Send(MailMessage message)
System.Web.Mail.SmtpMail.Send(MailMessage message)
POApproveAuthOrder.WebForm1.sendMail() in d:\blandat\inetpub\poapproveauthorder\default.aspx.cs:234
POApproveAuthOrder.WebForm1.Page_Load(Object sender, EventArgs e) in d:\blandat\inetpub\poapproveauthorder\default.aspx.cs:85
System.Web.UI.Control.OnLoad(EventArgs e) +67
System.Web.UI.Control.LoadRecursive() +35
System.Web.UI.Page.ProcessRequestMain() +750
Webmastern är inte så pigg på att installera tredjepartsprogramvara på servern.
Vad är det som gör System.Web.Mail så dåligt?
Och vad kan felet bero på?
Går det att felsöka på något sätt?
Men det skulle iofs vara kul att veta lite mer vad som är dåligt med den inbyggda? Har det med som de skriver på OpenSmtp.Net sida?
Den fördelen de nämner på deras sida vet jag inte hur de kommit fram till, eftersom det är rent skitsnack. Det går alldeles utmärkt att använda System.Web.Mail till att skicka med vilken SMTP-server som helst.
Nej, nackdelen med System.Web.Mail är dels att den inte är särskilt kraftfull. Vissa saker kan man inte göra (t.ex. skicka mail i text och HTML-format), andra saker är knepiga och går endast att komma åt via obskyra Fields-inställningar.
Det stora problemet är dock att System.Web.Mail i själva verket bara är en wrapper runt COM-objekten CDOSYS och CDONTS. Problemen med detta är många:
Man bör alltid sträva efter att köra managed code så länge som möjligt, för maximal portabilitet och applikationssäkerhet. Att blanda in COM-objekt är ett steg i fel riktning
System.Web.Mail väljer att wrappa CDOSYS eller CDONTS beroende på vilket operativsystem man kör på, vilket i praktiken innebär att saker och ting kan bete sig olika på olika maskiner, trots identisk kod.
CDOSYS eller CDONTS krävs för att det ska fungera, och dessa finns inte alltid tillgängliga, eller har fek version. Windows 98/Me/XP Home får t.ex. väldiga problem.
Eftersom man överlåter allt till CDO så kan man drabbas av helt okontrollerbara fel när man flyttar sina applikationer. Det mesta tyder på att yohpops problem beror på att CDO saknas eller inte fungerar som det ska. Med en komplett, managed code-lösning får man en förutsägbar funktionalitet
254 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25