@rinnn

Как выполнить код в определенное время?

var a = DateTime.Parse("17:45");
                if (DateTime.Now == a);
            {
                
                MessageBox.Show("1");
            }

Например нужно показать месседж бокс в 17:45. Если текущее на компьютере время совпадает с var "а", то код выполняется. Проблема в том, что код выполняется в любом случае, даже если время не совпадает. Заранее благодарю.
  • Вопрос задан
  • 151 просмотр
Решения вопроса 1
Morpheus_God
@Morpheus_God
Можно так попробовать.
if(DateTime.Now.Hour == 21)
            {
                MessageBox.Show("Test");
            }
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
@MIsternik
DateTime date = DateTime.Parse("17:45");
Task.Delay(date - DateTime.Now ).ContinueWith(MessageBox.Show("1"));
Ответ написан
Комментировать
Комментировать
@leremin
atypical programmer
if (DateTime.Now == a);

Во-первых точку с запятой нужно убрать, а во-вторых лучше что-то такое сделать: if ((DateTime.Now - a).TotalSeconds < 1), например.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы