Visual Studio C# Email nach bestimmter Zeit versenden?

...komplette Frage anzeigen

2 Antworten

Der einfachste Weg ist es, einen sogenannten "Windows Service" zu basteln. Das ist ein Programm, das im Regelfall keine Benutzer-Oberfläche hat, sondern im Hintergrund ausgeführt wird, sobald der Rechner läuft.

Den Zeitversatz kannst du auf unterschiedlichste Weise lösen. 

Beispielsweise kannst du deine Termine einfach in Outlook eintragen und mit dem Windows Service auslesen. Je nach Vorgabe, die du im Termin festgelegt hast (dort ist es die "Erinnerung"), kann dir dein Service dann eine Email zum festgelegten Erinnerungszeitpunkt schicken. Damit hättest du eine sehr einfache und komfortable Verwaltung deiner Erinnerungen erreicht.

Allerdings ginge mein Beispiel auch ganz ohne Programmierung. Du legst einfach den Termin in Outlook an und ...

a) wenn du ein Windows-Handy (oder anderes Windows-Zielgerät) hast: ... synchronisierst einfach dein Outlook mit dem Handy. Dann hast du den Termin auch auf dem Handy.

b) wenn du kein Windows-Handy (oder anderes Nicht-Windows-Zielgerät) hast:  ... leitest ihn an dein Postfach weiter. Diese Weiterleitung verzögerst du bis zum Erinnerungszeitpunkt. Dann bekommst du als Erinnerung eine Email mit dem Termin.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von legaga1208
22.06.2016, 14:12

Erstmal danke für deine Antwort! :)

Und ja ich weiß das es auch andere Wege gibt sich an etwas erinnern zu lassen. Allerdings will ich das machen als Übung. Wie mache ich das mit dem Windows Service? Ist das auch über C#? Und wie kann ich die Termine aus Outlook auslesen lassen?

0

Möglich ist alles ;)

Einfachster Weg:
Weise dem Event einfach eine Zeit zu zu dem es ausgeführt werden soll und lasse einen Timer laufen der nach Event->Time sucht und bei true dieses dann ausführt.

Gruß: Holger

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von legaga1208
22.06.2016, 00:09

Ist es dann nicht so das wenn ich z.B bei der Zeit 20 Tage einstellen würde, dass der Pc bzw das Programm dann die vollen 20 Tage am Stück laufen müsste? Oder kann man das Programm auch schließen und es läuft dann im Hintergrund weiter? 

0

Was möchtest Du wissen?