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 |