MapViewOfFile 如何处理大文件
用内存映射的方法把一个文件加载进来没有问题。
但是,如果是个大文件,就会出错。
FFileHandle:=CreateFile(PChar(AFileName),GENERIC_ALL,0,nil,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
FSize:=Windows.GetFileSize(FFileHandle,nil);
FMappingHandle:=CreateFileMapping(FFileHandle,nil,PAGE_EXECUTE_READWRITE,0,0,nil);
FMemory:=MapViewOfFile(FMappingHandle,FILE_MAP_READ,0,0,0);
if FMemory=nil then raise Exception.Create('FMemory=nil'); // 这里小文件不会成nil,大文件就是nil
请教有能解决的吗?