3,881
社区成员
发帖
与我相关
我的任务
分享
LARGE_INTEGER FileSize;
FileSize.QuadPart = 1024 * 1024 * 1024; //创建一个1GB的文件
CreateSparseFile(L"f:\\1.dat", FileSize);
BOOL CreateSparseFile(TCHAR* pFileName, LARGE_INTEGER Size)
{
HANDLE hFile;
hFile = CreateFile(pFileName, GENERIC_WRITE | GENERIC_READ, FILE_SHARE_READ, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
if (hFile == INVALID_HANDLE_VALUE)
{
return FALSE;
}
DWORD dwReturn;
DeviceIoControl(hFile, FSCTL_SET_SPARSE, NULL, 0, NULL, 0, &dwReturn, NULL);
SetFilePointerEx(hFile, Size, NULL, FILE_BEGIN);
SetEndOfFile(hFile);
CloseHandle(hFile);
return TRUE;
}