WsAlloc 函数 (webservices.h)

从指定 分配内存段。

语法

HRESULT WsAlloc(
  [in]           WS_HEAP  *heap,
  [in]           SIZE_T   size,
                 void     **ptr,
  [in, optional] WS_ERROR *error
);

参数

[in] heap

指向 WS_HEAP 结构的指针,该结构表示要从中分配内存的堆。

[in] size

要分配的字节数。 此值可以为零。

ptr

成功时,一个指针,用于接收已分配内存的地址。 此指针在堆上调用 WsFreeHeapWsResetHeap 之前有效。

返回的指针在 8 字节边界上对齐。

零字节分配将返回非 NULL 指针。

[in, optional] error

指向 WS_ERROR 结构的指针,该结构在函数失败时接收其他错误信息。

返回值

如果函数成功,则返回NO_ERROR;否则,它将返回 HRESULT 错误代码。

返回代码 说明
WS_E_QUOTA_EXCEEDED
请求的字节(除了已分配的字节)超过了堆 的大小(由WS_HEAP_PROPERTY_MAX_SIZE 属性指定)。
E_OUTOFMEMORY
内存不足,无法完成操作。

注解

此函数返回的内存不是零初始化的,并且包含未定义的值。

要求

要求
最低受支持的客户端 Windows 7 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2008 R2 [桌面应用 |UWP 应用]
目标平台 Windows
标头 webservices.h
Library WebServices.lib
DLL WebServices.dll