using System;
using System.Net;
using System.Net.Mail;
using System.Threading;
class Program
{
static void Main()
{
Console.WriteLine("Hatırlatıcı Tarih ve Saatini Girin (yyyy-MM-dd HH:mm):");
string inputDateTime = Console.ReadLine();
if (DateTime.TryParseExact(inputDateTime, "yyyy-MM-dd HH:mm", null, System.Globalization.DateTimeStyles.None, out DateTime reminderDateTime))
{
TimeSpan delay = reminderDateTime - DateTime.Now;
if (delay.TotalMilliseconds > 0)
{
Console.WriteLine($"Hatırlatıcı {delay.TotalMinutes} dakika sonra tetiklenecek.");
Timer timer = new Timer(SendReminder, null, (int)delay.TotalMilliseconds, Timeout.Infinite);
}
else
{
Console.WriteLine("Geçmiş bir tarih girdiniz. Hatırlatıcı hemen tetiklendi.");
SendReminder(null);
}
}
else
{
Console.WriteLine("Geçersiz tarih/saat formatı.");
}
Console.ReadLine();
}
static void SendReminder(object state)
{
string toAddress = "
aliciposta@mail.com"; // E-posta alıcısı
string subject = "Hatırlatıcı";
string body = "Zaman geldi! Hatırlatıcı zamanı.";
using (MailMessage mailMessage = new MailMessage("
gonderici@mail.com", toAddress, subject, body))
{
using (SmtpClient smtpClient = new SmtpClient("smtp.mailserver.com"))
{
smtpClient.Port = 587;
smtpClient.Credentials = new NetworkCredential("kullaniciadi", "sifre");
smtpClient.EnableSsl = true;
try
{
smtpClient.Send(mailMessage);
Console.WriteLine("Hatırlatıcı e-postası gönderildi.");
}
catch (Exception ex)
{
Console.WriteLine($"Hata oluştu: {ex.Message}");
}
}
}
}
}