When running Doxygen on Windows (Win7 64-bit), I always encountered this error and bothered me for a long time.
This time, Doxygen's source code was downloaded and successfully compiled on Windows 7 (see here for details) to see what happened.
In the Visual C + + 2008 Express Edition debug, the discovery is within the bool Qfile::open (int m) function defined in Doxygen source code (. \qtools\qfile_win32.cpp), calling _WF When open () creates an. html file, the returned pointer is null.
After tracking here, toss for a long time also did not find the reason-function call no problem, hard disk space is enough, the source file Doxygen error alone with Doxygen resolution is no problem.
When I was in a daze, I saw the following error (0x80070052) in the Doxygen output directory when I tried to create the file manually (Doxygen code created the failed file).
This makes me see some clues. After Google,baidu and Bing had a pass on the keyword "0x80070052", it began to suspect that the number of files allowed to be created in Windows previous directories might be capped.
So wrote a few lines of python, to a specified directory to loop the file, the test results verified my guess-Windows (FAT32 file system) A directory can create a number of files are capped, and this upper limit and the length of the file name.
The result of my test is that in the FAT32 file system, a directory, if the filename length is 50 characters (including. and extension), the maximum number of files is 13106, if the file name length is 100, the maximum number of files is 7281.
(By the way, I created a virtual FAT32 partition using TrueCrypt under Win7 64-bit, and the Doxygen output is on this partition.) )
Maximum number of files supported in one directory the NTFS file system is larger than the FAT32. So I immediately did a test, the output of the Doxygen point to the NTFS partition on my computer, the error disappeared ...
Summary:
-The number of files that can be created in a Windows directory is capped, and the longer the file name, the smaller the maximum number of files.
-The maximum number of files supported by the NTFS file system is larger than FAT32;