mboost-dp1

C# smtp server


Gå til bund
Gravatar #1 - Jonasee
5. nov. 2009 20:36
Jeg er på udkig efter en løsning til C#, ligsom i php, hvor det er muligt at send mails uden at angive smtp server.
mail(to,subject,message)

Jeg har pt. kun kunne set løsninger hvor man skal sætte smtp klient op, så mit spørgsmål lyder på, om der finds en løsning til C# hvor man ikke selv skal sætte en smtp klient op.
Gravatar #2 - Windcape
5. nov. 2009 20:44
I PHP angiver du også SMTP server i din php.ini, hvis du kører din applikation fra en Windows Server.

Windows har ikke sendmail (som php ellers benytter).
Gravatar #3 - Jonasee
5. nov. 2009 20:45
ok
Gravatar #4 - Windcape
5. nov. 2009 20:55
Og pointen er vel at du ikke kommer uden om en SMTP, medmindre du vil bruge et eller andet public relay, som markere dine emails som spam.

Måske kan du uddybe formålet?
Gravatar #5 - myplacedk
5. nov. 2009 20:58
Windcape (4) skrev:
Og pointen er vel at du ikke kommer uden om en SMTP

Tjoh, man kan kontakte modtagerens SMTP direkte.

På den måde lavede jeg engang en SMTP-klient direkte i PHP. Dvs. når man tilmeldte sig mit system, kunne man ved næste sidevisning få besked, hvis en email ikke kunne sendes til adressen. (Vi havde mange problemer med folk der ikke kunne skrive en email-adresse korrekt.)
Gravatar #6 - Windcape
5. nov. 2009 21:01
Typisk kan man jo bare pege på sin ISPs mailserver. SmtpClient kræver ikke en lokal server.

At benytte TCP og SMTPs RFC kommandoer (tænk telnet style), er en mulighed, men jeg synes det ville være nemmere og mere realistisk at finde en SMTP løsning.
Gravatar #7 - Jonasee
5. nov. 2009 22:07
#4
Var tiltænkt en hjemmeside der skulle send mails ud, men da det ikke er min og jeg ikke mener at person der skal have den har en smtp server, så ville det være nemt vis der var en måde at have en local server
Gravatar #8 - Windcape
5. nov. 2009 22:10
#7

De fleste hjemmeside hosts har en SMTP server man kan bruge som relay, typisk gratis.
Gravatar #9 - myplacedk
5. nov. 2009 22:20
Jonasee (7) skrev:
jeg ikke mener at person der skal have den har en smtp server

Det lyder temmelig usandsynligt.

Hvis hjemmesiden er på et webhotel, har de en SMTP-server. Hvis hjemmesiden er på en hjemmesider, har internetudbyderen en SMTP-server.
Gravatar #10 - mazing
5. nov. 2009 22:38
Du kan sætte SmtpClient op til at bruge gmails smtp server :) De bruger heller ikke standard porte så sandsynligheden for at det bliver blokeret er en del mindre.

Hevet ud af noget kode jeg har liggende:

MailMessage mail = new MailMessage();
mail.From = ...
mail.To = ...
mail.Subject = ...
mail.Body = ...

SmtpClient client = new SmtpClient(host, port);

client.UseDefaultCredentials = false;
client.DeliveryMethod = SmtpDeliveryMethod.Network;

client.EnableSsl = ssl;
client.Credentials = new NetworkCredential(user, pass);

client.Send(mail);

Gravatar #11 - arne_v
6. nov. 2009 02:30
For at opsummere så må mulighederne være:
1) bruge en lokal SMTP server (det er usandsynligt at der ikke er en sådan på et webhotel (eller hos ISP hvis det er hjemme hosting)
2) bruge en ekstern SMTP server udenfor web hotel - her vil der normalt skulle angives brugernavn/password
3) slå MX records for modtager op i DNS og connect direkte til den

Rækkefølgen er en prioritering efter hvad der er nemmest.

Problemet med #3 er at håndtere flere MX records med forskellig prioritet, gensendelse i tilfælde af fejl etc..

Gravatar #12 - Jonasee
6. nov. 2009 07:08
Tak for hjælpen, det kunne meget vel se ud til at det bliver webhotel/ISP smtp server.
Gravatar #13 - Mort
8. nov. 2009 09:50
#12
Det får du nok også mere glæde af i længden.

At lege SMTP server selv er det som botnets gør med de inficerede computere. Det vil sige at de motoder der findes til at filtrere den slags spam sendere også ville fange mails som kom fra din webserver, hvilket ville kategorisere dine mails som spam.
Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login