GlobalSize 関数 (winbase.h)

指定したグローバル メモリ オブジェクトの現在のサイズをバイト単位で取得します。

メモ グローバル関数はオーバーヘッドが大きく、他のメモリ管理機能よりも機能が少なくなります。 新しいアプリケーションでは、グローバル 関数 を使用する必要があるとドキュメントに記載されていない限り、ヒープ関数を使用する必要があります。 詳細については、「 グローバル関数とローカル関数」を参照してください。
 

構文

SIZE_T GlobalSize(
  [in] HGLOBAL hMem
);

パラメーター

[in] hMem

グローバル メモリ オブジェクトへのハンドル。 このハンドルは、GlobalAlloc 関数または GlobalReAlloc 関数によって返されます。

戻り値

関数が成功した場合、戻り値は指定されたグローバル メモリ オブジェクトのサイズ (バイト単位) です。

指定したハンドルが無効な場合、またはオブジェクトが破棄された場合、戻り値は 0 です。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

メモリ ブロックのサイズは、メモリが割り当てられたときに要求されたサイズよりも大きくなる可能性があります。

指定したオブジェクトのメモリ ブロックが破棄されていないことを確認するには、GlobalSize を呼び出す前に GlobalFlags 関数を使用します。

要件

要件
サポートされている最小のクライアント Windows XP [デスクトップ アプリ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー winbase.h (Windows.h を含む)
Library Kernel32.lib
[DLL] Kernel32.dll

関連項目

グローバル関数とローカル関数

GlobalAlloc

GlobalFlags

GlobalReAlloc

メモリ管理関数