Avatar billede clausnilsson Mester
04. august 2012 - 17:14 Der er 6 kommentarer og
2 løsninger

Sende e-mail fra C#-program

Hej,

Jeg spørger som nybegynder, så jo flere detaljer i svaret, jo bedre, det er super hvis jeg også forstår noget af det :). Jeg har søgt i timevis efter en løsning både her og generelt, men det er nok pga. min begynderstatus, at jeg ikke har fundet noget der virker endnu.

Jeg har brug for kode til at sende en mail, så enkelt er det. Jeg prøver i Visual C# 2010 Express.

Jeg har fundet flere eksempler og jeg tror det er noget med authentication, der går galt. Jeg er helt ligeglad med om jeg skal sende mailen via et af mine mange domæner hos forskellige udbydere eller Gmail eller hotmail, bare det virker :)

Det er vist ret enkelt hvis man bare ved hvordan, ikke?

Tak
Avatar billede Panen Nybegynder
04. august 2012 - 20:20 #1
Har lavet et script her: http://pastebin.com/8YP80RTz

Du skal bare lave en ny Console Application og putte det ind :)
Og huske at udfylde felterne med email og password
Avatar billede clausnilsson Mester
06. august 2012 - 19:11 #2
Tak. Men det virker så heller ikke.

Når jeg skriver send i consollen sker der ingenting.

Men det er muligvis ikke kodens skyld? Jeg ser der står port 587, og TDC skriver at man ikke kan bruge port 587 uden en TDC-e-mail-adresse. Jeg har TDC internet her.

Jeg har også prøvet via 3G modemet (3), men her sker der heller ikke noget.

Hvorfor nu det?

mvh
Avatar billede Panen Nybegynder
06. august 2012 - 21:39 #3
Og du bruger en Gmail med tilhørende password til at sende?
Det virker helt perfekt her.
Avatar billede ntholm Nybegynder
14. august 2012 - 12:11 #4
Brug den her metode, den virker ;-)

Men du skal lige sætte en mailserver op, jeg er ret sikker på at gmail kan gøre det - hvis du ikke har et webhotel.

public void SendMail(string to, string subject, string messageText)
        {

            SmtpClient smtp = new SmtpClient();
            MailMessage message = new MailMessage();
            message.IsBodyHtml = true;
            NetworkCredential smtpCreds = new NetworkCredential("E-MAIL", "PASSWORD");

            smtp.Host = "SMTP-ADRESSE";
            smtp.Port = PORTNUMMER;
            smtp.UseDefaultCredentials = false;
            smtp.Credentials = smtpCreds;
            // smtp.EnableSsl = true;

            MailAddress sendTo = new MailAddress(to);
            MailAddress sendFrom = new MailAddress("E-MAIL");

            message.Body = messageText;
            message.Subject = subject;
            message.IsBodyHtml = true;
            message.From = sendFrom;
            message.To.Add(sendTo);
       
            smtp.Send(message);
        }
Avatar billede ntholm Nybegynder
14. august 2012 - 12:22 #5
PS(selvfølgeligt):
husk at skifte 2xE-MAIL, PASSWORD, SMTP-ADRESSE og PORTNUMMER og ud med dit eget. E-MAIL er den mail du sender FRA.

Oppe i toppen af .cs filen hvor metoden ligger skal du skrive:

using System.Net.Mail;
using System.Net;
using System.Web;
(eller noget i den stil :D)

Essentielt burde du lave en class: MailSender.cs som indeholder metoden. Så kan du instantiere den class og køre metoden hver gang du skal bruge den istedet for at have hele metoden skrevet flere steder.
Avatar billede ntholm Nybegynder
14. august 2012 - 13:02 #6
Gmail bruger port 995

følg den her guide til opsætning af gmail POP3 server:
http://support.google.com/mail/bin/answer.py?hl=en&answer=13287
Avatar billede Panen Nybegynder
14. august 2012 - 15:37 #7
#6 Gmail bruger port 587 til afsendelse. Præcis som mit script.
POP3 er til modtagelse.
Avatar billede clausnilsson Mester
06. december 2012 - 19:46 #8
Jeg har opgivet projektet. Når jeg får tid og lyst til at komme videre med problemet må jeg købe mig til hjælp.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester