Ну в чем проблема тогда?
Кидаешь таймер на форму, интервал даешь какой хочешь (можно оставить 1 секунду) и едит, в который будешь вводить время (с секундами).
Ну а в таймере пишешь:
Код:
IF(TimeToStr(Now) = Edit1.Text)
then ShowMessage('Mesage');
В едит должен вводить нужное тебе время, например: "10:10:10" - сообщение будет в десять часов, 10 минут, 10 секунд.