I just came across this JKDefrag GUI that allows you to schedule it to run when idle. It doesn't specify what "idle" means (it uses jt.exe from the Resource Kit), but it's worth checking out. (It also incorporates a pagefile defragger, a registry optimizer, a freespace wiper, and a temp file cleaner.)
_________________________
Bitt Faulk