次の方法で共有


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

成功した場合、割り当てられたメモリのアドレスを受け取るポインター。 このポインターは、ヒープWsFreeHeap または WsResetHeap が呼び出されるまで有効です。

返されたポインターは、8 バイト境界に配置されます。

0 バイト割り当てでは、NULL 以外のポインターが返されます。

[in, optional] error

関数が失敗した場合に追加のエラー情報を受け取る WS_ERROR 構造体へのポインター。

戻り値

関数が成功した場合は、NO_ERRORを返します。それ以外の場合は、HRESULT エラー コードを返します。

リターン コード 説明
WS_E_QUOTA_EXCEEDED
要求されたバイトは、既に割り当てられているバイトに加えて、WS_HEAP_PROPERTY_MAX_SIZE プロパティで指定されているヒープのサイズを超えています。
E_OUTOFMEMORY
操作を完了するためのメモリ不足。

注釈

この関数によって返されるメモリは 0 初期化されず、未定義の値が含まれています。

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー webservices.h
Library WebServices.lib
[DLL] WebServices.dll