If IntToStr(CompareTime(time1, time2)) = 0 Then ShowMessage('shoda')
Tohle je divné. Jednak porovnáváš řetězec s číslem (zřejmě jsi tam chtěl jen převod na integer) a druhak je čas v typu Datetime uložen celý v desetinné části, takže oříznutím by to bylo splněno vždy 