Defraggler is a fantastic program but it can't do everything. There are additional files that are in use while your OS is running. If you supplement Defraggler with a Microsoft product called PageDefrag which you can download for free from http://technet.microsoft.com/en-us/sysinternals/bb897426.aspx This utility will allow you to evaluate your system for these in use files and schedule them to be defragged on your next system restart before your OS loads.
Don't be afraid to run Defraggler more then once. If you used the Microsoft built-in Defrag you might likely need to run it 16 times to get it to do a good job, even though it gives you bad advise saying that you do not need to defrag again. In one pass, Microsoft’s product only gets rid of most fragmentation and does not do the job that Defraggler does or arranging your files so that you will be less likely to become fragmented again. Defraggler removes many of the gaps between data so that you have plenty of contiguous free space for your new files. It is a shame that Microsoft OS's don't pay more attention to where they write data which is why fragmentation occurs so quickly, but I suppose if they evaluated your hard drive before they wrote to it, our PC’s would run even slower. Therefore, I see Defraggler and PageDefrag as a solution to the problems.