Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

When copying large numbers of files in one sweep, windows requires quite some time to prepare the copy? The same happens when deleting large amounts of files. What is happening here? What preparations are going on there?

share|improve this question
1  
I can only speculate that it's scanning the files for issues such as being locked by other processes, permissions etc. –  ChrisF Mar 25 '11 at 9:14

4 Answers 4

As answered by Raymond Chen in one of the replies to his original File copy progress dialog post (http://blogs.msdn.com/b/oldnewthing/archive/2004/01/06/47937.aspx#47964), one of the things it does is to get the filesizes for the entire copy operation to make a better guesstimate about the time the copy will take.

share|improve this answer

"Preparing to copy" is a special feature that allows to delay the whole process by unreasonable amount of time and gives you more time to appreciate a fancy dialogue box created by Microsoft designers.

While windows is "preparing to copy" it does not

  • Check for possibly locked files (those will only be revealed during actual copying process, for obvious reasons)
  • Make any changes to your file system (also note that actual filesystem is not the factor here, behavior is the same for NTFS / FAT32)

What it does though is creating the full list of files and performing some magic number calculations to make wrong assumptions about estimated copy time.

share|improve this answer

It builds the list of all files in the current folder and its subfolders and logs the changes that will be made to the files in a journal. That's necessary because of the way that NTFS works.

Some use cases of that list include:

  • updating file system
  • maintaining file consistency in case of a failure
  • knowing the number of files so you can compute how much time is left to complete the operation, what percentage of the operation has been completed so far and draw the progress bar accordingly.
  • providing user to retry or abort the operation (whether it's copy, move, delete) when it fails on some file(s).

If that's annoying you can always use xcopy or robocopy via command prompt for large number of file operations.

share|improve this answer
15  
If it is necessary because of the way that NTFS works, then why can xcopy do it's job without it? –  Björn Pollex Mar 25 '11 at 9:38
5  
"preparing the copy" happens after the list is build and mainly used for computing percentage, time left, drawing progress bar with fancy graphics etc. xcopy doesn't bother with all that. –  Gani Simsek Mar 25 '11 at 9:48
6  
Then why did you say that it is "necessary because of the way that NTFS works"? I can only speculate about what Windows does when it is "preparing", but recall that it never did that in Windows XP, and third-party utilities (e.g. TeraCopy) also have near-instant delays between starting the file transfer. –  Breakthrough Mar 25 '11 at 10:55
1  
Looks like I didn't clearly expressed myself. The list is necessary for the file operation, which is common in both cases (i.e. cmd and gui) and doesn't take much time. However, the reasons you see that "preparing to copy" window are because of the graphics, percentage and time computations involved, especially in Aero theme and that's one of the cases where that list is used, which I think is the answer to the question. Since there's no gui in xcopy or robocopy there are no preparing to copy computations. Also, it DID that in XP as well, i.imgur.com/UOiRy.png –  Gani Simsek Mar 25 '11 at 11:49
6  
This is not true -- you'll get the same message on FAT32. It's not an issue with the filesystem, it's an issue with the FindFirstFile/FindNextFile API. Explorer (who is responsible for the file copy dialog) uses the same API exposed to you, the programmer to display these things, and the Windows API doesn't expose anything about maintaining e.g. allocation tables (In particular, because NTFS doesn't use an allocation table -- that's from FAT land). –  Billy ONeal Mar 25 '11 at 16:49

To my knowledge Windows checks that it Can dó what you ask for ALL files. This means that e.g. locked files are found up front instead of halfway through causing an incomplete result.

share|improve this answer
    
Incorrect. It does not check for locked files and very often fails in the middle of actual copy process. –  smc Jul 16 at 9:12

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.