GetProcessHeap函数获取调用进程的堆的句柄。然后可以在HeapAlloc,HeapReAlloc,HeapFree和HeapSize功能的呼叫中使用该句柄。
手动GetProcessHeap(VOID)
参数
此函数无参数。
返回值
如果函数成功,则返回值是调用进程的堆的句柄。
如果函数失败,返回值为NULL。
备注
GetProcessHeap允许基于Win32的应用程序从进程堆分配内存,而不必首先使用HeapCreate函数创建一个堆,如下例所示:
HeapAlloc(GetProcessHeap(), 0, dwBytes);
请注意,通过调用函数获取的句柄不应用于调用HeapDestroy函数。
另请注意,使用HeapAlloc,HeapFree,HeapReAlloc和HeapSize函数访问进程堆时,不应指定HEAP_NO_SERIALIZE标志。该系统可以在应用程序的进程中创建其他线程,例如同时访问进程堆的Ctrl + C处理程序。有关HEAP_NO_SERIALIZE的更多信息,请参阅HeapCreate函数。
也可以看看
GetProcessHeaps, HeapAlloc, HeapCreate, HeapDestroy, HeapFree, HeapReAlloc, HeapSize