您好,
我收到一些模块缓冲区。例如,我收到的缓冲区,这是由以下代码
和平产生
然后我尝试使用内存映射文件的文件插入到缓冲区。 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}视觉工作室已经以管理员身份运行。感谢您的留言