在Delphi中如何能分配到大于1G的内存?(100分)

  • 主题发起人 主题发起人 dicom3
  • 开始时间 开始时间
D

dicom3

Unregistered / Unconfirmed
GUEST, unregistred user!
在VC开发的程序,我可以分配到>1GB的内存
void* p1;
p1 = new char[1024*1024*1024+150*1024*1024]; //run ok

但在delphi的程序
GetMem(p1,1024*1024*1024+1); //raise Out of memory

在delphi中如何能使用程序分配到大于1GB的内存?
 
在工程文件里面加入
{$SETPEFLAGS IMAGE_FILE_LARGE_ADDRESS_AWARE}
这样你就打开了大内存模式,
 
但我的系统是1.5G物理内存,+虚拟内存4G
为何分配不到1.3GB的内存?

GetMem(p1,1024*1024*1024+300*1024*1024);
 
VirtualAlloc
 
楼主是超级潜水员啊
 
多人接受答案了。
 
后退
顶部