解决方案 »

  1.   

    一次读取4g到内存???windows是不可能的吧
      

  2.   

    每次读了多少以后下次再读的时候就CFile::Seek(nCount, CFile::begin) nCount为已读文件总字节数  一次读4G是不可能的
      

  3.   

    windows上的文件不能大于4G的文件---------
      ++C++
    ---------
      

  4.   

    用下面两个函数试试:
    __int64 _lseeki64( int handle, __int64 offset, int origin );
    __int64 _telli64( int handle );
    具体用法见MSDN
      

  5.   

    //我用下面的方法读整个硬盘(两个文件)
    LONGLONG offset=...;LARGE_INTEGER Leage64;
    Leage64.QuadPart = offset;HANDLE hFile;
    ...
    SetFilePointer(hFile, Leage64.LowPart, &Leage64.HighPart, FILE_BEGIN);DWORD dwLen;
    char databuf[8192];
    ReadFile(hFile,databuf,8192,&dwLen,NULL);