Не рекомендуется обновлять файлы, используя системную дату и время, если у вас есть шт в разных часовых поясах, вам нужно будет ездить на них. вместо этого используйте хеш-функцию, чтобы узнать, когда файл отличается и требуется обновление.
Хэширование файлов легко, посмотрите, например, http://delphi.about.com/od/objectpascalide/a/delphi-md5-hash.htm.
В любом случае, getFileTime имеет более низкое разрешение, чем tdatetime (больше в старых системах), но только на несколько секунд, тогда вам нужно сделать обход в сравнении.
Из MSDN "Не все файловые системы могут записывать время создания и последнего доступа, и не все файловые системы записывают их одинаково. Например, в FAT время создания имеет разрешение 10 миллисекунд, время записи имеет разрешение 2 секунды, а время доступа имеет разрешение 1 день (на самом деле, дату доступа). Поэтому функция GetFileTime может не возвращать ту же информацию о времени файла, установленную с помощью SetFileTime. NTFS задерживает обновление времени последнего доступа к файлу до через час после последнего доступа. "