GlobalFlags 関数 (winbase.h)

指定したグローバル メモリ オブジェクトに関する情報を取得します。

メモ この関数は、16 ビット バージョンの Windows との互換性のためにのみ提供されます。 新しいアプリケーションでは ヒープ関数を使用する必要があります。 詳細については、「解説」を参照してください。
 

構文

UINT GlobalFlags(
  [in] HGLOBAL hMem
);

パラメーター

[in] hMem

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

戻り値

関数が成功した場合、戻り値はメモリ オブジェクトの割り当て値とロック数を指定します。

関数が失敗した場合、戻り値は GMEM_INVALID_HANDLEされ、グローバル ハンドルが無効であることを示します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

戻り値の下位ワードの下位バイトには、 オブジェクトのロックカウントが含まれます。 戻り値からロック数を取得するには、ビットごとの AND (&) 演算子で GMEM_LOCKCOUNT マスクを使用します。 GMEM_FIXEDで割り当てられたメモリ オブジェクトのロック数は常に 0 です。

戻り値の下位ワードの上位バイトは、メモリ オブジェクトの割り当て値を示します。 0 または GMEM_DISCARDEDできます。

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

要件

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

関連項目

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

GlobalAlloc

GlobalDiscard

GlobalReAlloc

メモリ管理関数