E-Mail aus einer C# Anwendung heraus erzeugen



  • Aus einer HTML Webseite heraus kann man ja ganz einfach E-Mails versenden. Beispiel:
    <A HREF="mailto:meine_email@gmx.de?subject=Test&body=Dies ist ein Test"></A>

    Wenn dieser Link angeklickt wird, dann öffnet sich das installierte E-Mail Programm. Der Empfänger, der Betreff und der Inhalt sind bereits ausgefüllt. Der Anwender kann die Email korrekturlesen und muss dann nur noch auf "Absenden" klicken.

    Genau das gleiche möchte ich aus einen C# Programm heraus machen. Also eine E-Mail erzeugen, wobei ich aber nicht weiss welches E-Mail Programm auf dem Rechner installiert ist. Die E-Mail soll nicht sofort abgesendet werden, sondern der Anwender soll sie zuerst angezeigt bekommen und dann selber auf "Absenden" klicken.

    Weiss jemand wie das geht?

    Gruß
    Michael



  • Du kannst einfach per Process.Start den (lokal) zugewiesenen Mail-Client starten:

    var url = "mailto:meine_email@gmx.de?subject=Test&body=Dies ist ein Test";
    Process.Start(url);
    

    Wenn du auch noch Anhänge benötigst, dann s. Open default mail client along with a attachment.



  • Das sieht ja ganz einfach aus. Aber wie kann ich herausfinden welches der lokal zugewiesene Mail-Client ist?

    Gruß
    Michael



  • Wenn du unter "Standard Apps nach Protokoll auswählen" (unter "Einstellungen/Apps/Standard-Apps") schaust, dann ist dort bei "URL: MailTo" das zugewiesene EMail-Programm zu finden.



  • Hat sich erledigt. Es geht so wie du geschrieben hast. Da hat nur noch

    using System.Diagnostics;
    

    gefehlt.

    Vielen Dank!
    Michael


Anmelden zum Antworten