Reply
Posts: 0

Error 0X80070052: the directory or file can not be created

 

Hallo all!

 

I have been having a technical issue with one of my SanDisk Cruzer Titanium 2 GB UFD (USB Flash Drive) drives recently. I have already solved the problem but I would like to discuss this subject further here. I was hoping that someone here who perhaps have had the same or similar issue would give me some feedback and shed some light on what actually causes this problem and how it can be solved or worked around. Since I have found one or two work-arounds for this issue I'm going to start off by sharing my knowledge and conclusions on this subject so far.

 

If you're reading this and you're having the abovementioned error when copying files to your UFD drive and want to solve it straight away, then you don't have to read any further - just go to the section "Work-arounds and possible solutions". If none of that solves your problem, then please write back and I will try to assist you.

 

Overview

UFD: SanDisk Cruzer Titanium 2 GB

Device version: 3

OS: Windows Vista 64-bit

SP: Service Pack 1 for Vista

 

Problem

The problem is that when I try to copy a bunch of files to it I get the error message above ("Error 0X80070052: the directory or file can not be created" ) when the drive is formatted with file system "FAT (standard)" and the Allocation unit is set to 32 KB in the Format utility of Windows. The "FAT (standard)" here most probably refers to FAT16.

 

Example

Here recently I had 470 picture files on my desktop that I wanted to transfer to the UFD. I opened up one instance (program window) of Windows Explorer, explored the UFD and deleted all the files on it. Then I opened another instance of Windows Explorer, explored the Desktop and simply selected and drag and dropped the picture files from it's folder on Desktop to UFD device in order to start the copy operation. When the copy process was about one third (1/3) way through it stoped and the "Error 0X80070052: the directory or file can not be created" showed up for the next picture it was supposed to copy. The same error showed for all the following pictures for every time I clicked on the "Skip" button. When I marked "Do this for all current items" and clicked "Skip", it skipped all the remaining pictures and no more were copied, thus: the error message applies to all the remaining pictures counting from the first appearenace of the error. The number of copied picture files was 169. The remaining 301 were not copied.

 

Troubleshooting

  • The first thing I did in an attempt to solve the problem was to re-format the drive, using the Format utility in Windows. Note that I had never re-formatted it in any way or otherwise manipulated or modified the UFD drive before since I bought it. I opened a new instance of Windows Explorer, right-clicked on my UFD drive and chose Format option. When the Format utility showed up, I let it stay on it's default settings as they were shown with File system being "FAT (standard)" and Allocation unit "32 KB", and I clicked the "Start" button (NOT the Windows Start button) to start the formatting process. After successfull formatting, I went on experimenting with the drive the same way as in the example above; I tried copying the 470 picture files to it. The problem appeared the same way as in the example above: the first few files were copied successfully while the remaining showed the same error message. The only difference from the example above was that 179 files were copied successfully this time, compared to the 169 files in example above.

  • During the copying attempt above, on a piece of paper I had noted down the picture file names for few of those files that were not copied successfully. Then I tried opening these files in Windows, as well as copying them to another hard disk drive (HDD) on the computer. I successfully performed both tasks. From that I concluded that the affected picture files were not corrupted or what so ever.

  • I then uninstalled the U3 Launchpad from the UFD drive by starting U3 Launchpad and choosing the Uninstall option in the U3 Launchpad settings from within U3 Launchpad. During the uninstall the UFD drive was formatted by the U3 uninstallation wizard, but I don't know with what File system or what Allocation unit. After the uninstallation of U3 and formatation of the UFD drive, I have tested to copy the picture files but it failed again, this time after successfully copying 172 files.

  • I the formatted the by now storage only (non-U3) UFD drive again using the Format utility in Windows this time. But this time I chose FAT32 as File system and Allocation unit of 4096 Byte. After successfull formatting I tried to copy the 470 picture files again and I could copy them all with no problem, without any errors at all.

  • I then re-formatted it again using the Format utility in Windows by using the "FAT(standard)" option again and the default Allocation unit of 32 KB. Then I tried to copy the picture files again and it failed miserably again, just as before, and the by now familiar error message started to show.

  • Next thing I did was to delete the picture files from the UFD. Then I tried copying those picture files one by one for which the error message showed. I was able to copy them with no problem. That confirms that there's really nothing wrong with those files and as I have assumed before they are not corrupted. But when I tried again to copy them all to the UFD the error started to show.

  • The next thing I did when the error message started to show was to first skip copying all the remaining files and getting the error messages out of the way. Then I removed only one of the files from the UFD and tried to copy another in it's place from my folder at Desktop. For instance, if I successfully had copied 169 files out of 470 to the UFD like in the example above, I would remove one of them so that it would be 168 left. Then when I copied another file from Desktop into it's place and the file copied successfully, even if it was returning the error message before when I tried to copy it together with the others. In the same way, if I removed 5 files from the 169 successfully copied ones on UFD, I would have 164 files left. Then I could copy over any 5 other files to the UFD in their place. So 169 files was like a limit for how many files I could have on the UFD. If I wanted to copy new files to the UFD I would have to make place for them, i.e. by deleting some others. Note that this limit was not always 169. As I mentioned above, it could sometimes be 179, or 172, and so on. It seems to be a random number, there doesn't appear to be any logic in it at all.

Conclusions

From my experiments I can conclude following things.

  1. The problem of copying files to the UFD manifests by showing the error message "Error 0X80070052: the directory or file can not be created".

  2. The error message occurs if the File system is FAT16 with an Allocation unit of 32 KB. I'm not sure if this is the only ocasion when the error message occurs. It may perhaps occure when the Allocation unit is 64 KB (not tested) using the FAT16 File system. I have tested formatting the UFD with FAT16 by using Allocation unit below 32 KB; 16 KB, 8192 Byte, 4096 Byte, 2048 Byte, 1024 Byte and 512 Byte with no success at all. Chosing any of these Allocation unit sizes results in a un-successfull formatting of the UFD.

  3. The problem is not File format specific. In other words: the problem affects all types of File formats including picture files (JPEG, PNG, etc.), archive files (ZIP, RAR, etc.), document files (DOC, XCL, PDF, etc.) and others. The creation of new folders/directories may be affected as well (not tested).

Work-arounds and possible solutions

Here are the solutions I find possible for this type of problem.

  1. Formatting the UFD drive with FAT32 instead of FAT16 (also reffered to as "FAT (standard)" in Windows) will resolve the problem. The size of Allocation unit for FAT32 can be chosen freely, preferably between 512 Byte to 4096 Byte.

    How to: Open Windows Explorer, right-click on your UFD device (SanDisk or not), chose Format, now chose your prefered settings in the Format utility. Remember, do not choose the option "FAT (standard)" or "FAT16", this is the faulty one. Choosing either FAT32, exFAT, or NTFS will all result in a functional UFD drive.

  2. Formatting the UFD drive with NTFS or exFAT can be chosen as well, but it is not so efficient as FAT32 on small devices such as UFD.

  3. Do not store more than approximately 169 items (files or folders) in the root of the UFD drive. If you want to store more then 169 items, then create new folders in the root of the UFD drive and make new sub-folders in these folders if you like so that you can sort your files in these folders instead of storing them all in the root of the UFD drive.

Questions

Here are few things I still wonder.

  1. How is this type of problem even possible just because FAT16 is used? Remind me if I'm wrong but FAT16 has a limit of 512 (for historical reasons, i.e. backward compatibility) to 32767 entries (the real limit) in the root. The 169 entries after which I was experiencing the error, is not even close to 512, and it's even less close to 32767 entries. So why do I get these errors at all? The real reason for that can't be the FAT16 Files system, because the limitation of that particular File system is far from being reached if all you got is 169 to 470 entries. By definition of FAT16, that's wouln't be a problem. That's why FAT16 is often used on small devices like UFD drives and other Flash media because these usually don't contain many entries.

  2. Is my UFD drive faulty or malfunctioning perhaps?

  3. Would it make any difference if I updated it's firmware and or U3 Launchpad version?

  4. What File system and Allocation unit (also known as cluster) size is used by the uninstallation wizard for formatting the UFD drive when uninstalling the U3 Launchpad?

This problem really puzzles me and I would really like to go to the bottom with this one. It just doesn't seem reasonable why it should have any issues when using FAT16 Files system. Maybe another geek out there could explain this further? Is there anything you think I should add to this thread or modify? If we can't explain this matter or expand this thread any further, then I hope that it as it is will be useful to anyone out there who's facing this same type of problem. I will sure add additional information to it if can come up with anything else on this matter.
Message Edited by ElectroGeeza on 02-15-2009 01:18 AM
Posts: 0

Re: Error 0X80070052: the directory or file can not be created

While this is an old post, it still shows up pretty high on searches. Therefore, the following information may help clear up the issue...unfortunately it has to be technical...but here goes:

 

FAT (FAT16) does indeed have a 512-entry limit, and the problem isn't cluster size.

 

The issue is rooted in DOS/Win3.x/Win95/etc, which used FAT12 or FAT16, where the number represents how many bits (binary digits) are used to store information. FAT12 is the time of 8.3 UPPERCASE-ONLY filesystems and FAT16 was for "nice, long" filenames...yet the OS still needed to be backwards-compatible with all the programs of that period [you can see what Microsoft did on any Windows system by typing "dir /x" in a command prompt...you'll see entries like "PROGRA~1" for "Program Files" and "DOCUME~1" for "Documents and Settings"]. Following, multiple 8.3 filenames are consumed when you save long names like this:

 

"This is my financial worksheet for 2009-2010.xlsx"

 

That sample filename alone will consume many directory entries. The limits imposed by the filesystem are directly correlated to the "bits" (binary digits) in use to store the information you want to keep so FAT16, by no coincidence, Table 13-6 on this page: 

 

* Working with File Systems (Microsoft)

 

shows that ~65,536 (2 to the power of 16, or 16 bits' worth of) entries can be stored on a single FAT16 volume.

 

Varying filename lengths and overhead (extra information stored about each file you save, such as whether your file is "read only", as well as workarounds to keep disk-checker utilities from corrupting all your brand new long filenames) mean that you get an arbitrary number of files in the root of any (not just USB) drive formatted with FAT16.

 

That basically covers it without overdoing it. If you still want to see what's really going on, search for "computer forensics" with respect to "FAT file systems". I've included a current link below, which is an excellent discussion providing an example of exactly what the system does when you save any name in FATxx, long or not.

 

References:

* Errors Creating Files or Folders in the Root Directory (Microsoft)

* COEN 352: Computer Forensics / FAT File Systems (Santa Clara University)

 

By the way, lots of people speculate and gripe about this issue, and I'm currently re-educating (again, and again) my users that this cannot be "fixed", so...this writeup is intended to both address the speculation and provide a resource for others who aren't satisfied with all the vagueness and want to actually understand it. I chose your writeup because you obviously tried, and you were still left with the right lingering questions. Kudos, and cheers.