返回首页

您好,
我收到一些模块缓冲区。例如,我收到的缓冲区,这是由以下代码
和平产生

 CString strTemp = "";

 for(int i =0; i < 10000; ++i)

 {

   strTemp.Format("Test1-Test2-Test3-Test4-Test5-Test6-Test7===%d;",i);

   m_strMemData = m_strMemData + strTemp;

 }

然后我尝试使用内存映射文件的文件插入到缓冲区。
我作为以下代码和平的一部分做的步骤是:
模块#1
1)创建一个文件在Temp文件夹
2)创建内存映射文件,使用CreateFileMapping
这些前两部分将作为单独的模块的一部分。

模块2:
3)打开映射文件,使用OpenFileMapping
4)发现粒度使用的GetSystemInfo
5)测绘循环的temp文件夹中的文件,并试图写由大块大块的,使用MapViewOfFile和copymemory。
是第一迭代mapviewoffile的成功,第二次,如果我改变了dwFileOffsetHigh,dwFileOffsetLow然后MapViewOfFile函数失败错误代码#5。
请帮助,如果任何一个有解决方案。
有人建议SetFilePointer,我想这也,但没有奏效。我是否需要尝试用映射文件指针这个setfilepointer,/打开文件指针或哪一个。 ?
请找到代码:{C}视觉工作室已经以管理员身份运行。感谢您的留言

回答

评论会员: 时间:2
S