パラメータ
uFlags
[入力]メモリ割り当ての方法を指定する。0 を指定した場合、既定値として GMEM_FIXED を想定する。
このパラメータで、明記されている矛盾を除き、次の値の任意の組み合わせを指定する。
値
|
意味
|
GHND |
GMEM_MOVEABLE と GMEM_ZEROINIT の各フラグの組み合わせである。 |
GMEM_FIXED |
固定メモリを割り当てる。ポインタが返る |
GMEM_MOVEABLE
|
移動可能メモリを割り当てる。Win32 環境では、物理メモリ内でメモリブロックが移動されることは決してないが、
既定のヒープ内で移動することは可能である。
戻り値は、メモリオブジェクトのハンドルである。このハンドルをポインタへ変換するには、GlobalLock 関数を使う。
この値を GMEM_FIXED フラグと組み合わせることはできない。
|
GMEM_ZEROINIT
|
メモリの内容を 0 へ初期化する。
GPTR GMEM_FIXED と GMEM_ZEROINIT の各フラグの組み合わせである。
|
次の値は、廃止された。
値
|
意味
|
GMEM_DDESHARE |
無視される。この値は、16 ビット版
Windows との互換性を保つ目的でのみ提供されている。 |
GMEM_DISCARDABLE
|
無視される。この値は、16 ビット版
Windows との互換性を保つ目的でのみ提供されている。
Win32 環境では、GlobalDiscard 関数を呼び出して、ブロックを明示的に破棄しなければならない。
この値を GMEM_FIXED フラグと組み合わせることはできない。 |
GMEM_LOWER |
無視される。この値は、16 ビット版
Windows との互換性を保つ目的でのみ提供されている。 |
GMEM_NOCOMPACT |
無視される。この値は、16 ビット版
Windows との互換性を保つ目的でのみ提供されている。 |
GMEM_NODISCARD |
無視される。この値は、16 ビット版
Windows との互換性を保つ目的でのみ提供されている。 |
GMEM_NOT_BANKED |
無視される。この値は、16 ビット版
Windows との互換性を保つ目的でのみ提供されている。 |
GMEM_NOTIFY |
無視される。この値は、16 ビット版
Windows との互換性を保つ目的でのみ提供されている。 |
GMEM_SHARE |
無視される。この値は、16 ビット版
Windows との互換性を保つ目的でのみ提供されている。 |
dwBytes
[入力]割り当てたいバイト数を指定する。
dwBytes パラメータに 0、uFlags パラメータに GMEM_MOVEABLE
フラグを指定すると、この関数は、破棄マークが付けられたメモリオブ
ジェクトのハンドルを返す。最初にハンドルだけを作成しておき、後で実際にメモリを割り当てる場合にこの方法を利用できる。
戻り値
関数が成功すると、新しく割り当てられたメモリオブジェクトのハンドルが返る。
関数が失敗すると、NULL が返る。拡張エラー情報を取得するには、GetLastError 関数を使う。 |