DWORD buffsize=1024*10;
char *tyu=(char *)LocalAlloc(LPTR,buffsize);
do

   if ( dwOffset > (buffsize - 1024 ))
   {
buffsize += 1024 ;
tyu = (char*)LocalReAlloc(tyu, buffsize, LMEM_ZEROINIT|LMEM_MOVEABLE);
    }
    strcpy() ........ //写入缓冲区
}while()
代码循环调用将数据写入缓冲区 刚开始扩展缓冲区LocalReAlloc没事 tyu指针无变化 buffsize增大到一定数值时 tyu指针变化 并且开始的数据也好像丢失了似的 改变了 然后再写入数据 循环 调用tyu = (char*)LocalReAlloc(tyu, buffsize, LMEM_ZEROINIT|LMEM_MOVEABLE);
就会错误 该内存无法write  实在是困惑 难道内存加到到一定值不行? 我实现是读取磁盘文件 都是文件名 假如文件少没事 一但磁盘文件多 大于我设定的缓冲区大小 就会错误 我这样动态改变缓冲区也应该对啊 为什么是错误呢
烦劳朋友们帮忙 感谢