用文件映射可以瞬间创建一个空的大文件。
VOID CreateSpecifiedSizeFile(DWORD dwSizeHigh, DWORD dwSizeLow)
{
HANDLE hFile = CreateFile(_T("1.txt"), GENERIC_WRITE | GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL, NULL);
if (hFile != INVALID_HANDLE_VALUE)
{
HANDLE hFileMap = CreateFileMapping(hFile, NULL, PAGE_READWRITE, NULL, dwSize, NULL);
if (hFileMap)
{
CloseHandle(hFileMap);
hFileMap = NULL;
}
CloseHandle(hFile);
hFile = INVALID_HANDLE_VALUE;
}
}
dwSizeLow < 4*1024*1024*1024 (当dwSizeHigh为0时。否则报错0x000003ee 文件所在的卷已被外部更改,因此打开的文件不再有效。)
dwSizeHigh 表示文件超过4G,当dwSizeHigh = 1,dwSizeLow = 0:文件大小为4G
当磁盘空间不足时,错误码:0x70
ERROR_DISK_FULL | There is not enough space on the disk. |