高手请进!!如何在堆中分配大块的内存,如在堆中分配一个10M的内存!急!!
扬帆 2005-06-06 09:55:14 如题,
我在程序中用HeapCreate分配了一个10M的堆,10M内存已经分配。可是用HeapAlloc却只能分配一个大约500k的内存,我想把堆中的10M内存分配成一个10M的内存块,请问如何解决??我查了msdn好像HeapAlloc分配内存有限制,大小是0x7fff8.算了下大约500k,请问如何突破这个限制。请高手赐教!!! 先给100分,不够再给!!!
代码如下:
pHeap=HeapCreate(HEAP_NO_SERIALIZE,10*1024*1024,10*1024*1024);
if (pHeap==NULL)
{
MessageBox("HeapCreate failure");
return ;
}
pBuffer=(u_char *)HeapAlloc(pHeap,HEAP_ZERO_MEMORY,1024*1000);
if(pBuffer==NULL)
{
MessageBox("HeapAlloc failure");
return;
}