GetPhysicallyInstalledSystemMemory

コンピュータに物理的に搭載されている RAM の量を取得する。

GetPhysicallyInstalledSystemMemory TotalMemoryInKilobytes

TotalMemoryInKilobytes : [var] 物理的に搭載された RAM のキロバイト単位の量を受け取る変数へのポインタ。

(プラグイン / モジュール : kernel32.dll)

解説

コンピュータに物理的に搭載されている RAM の量を取得する。

[戻り値]
関数が成功した場合、TRUE を返し、TotalMemoryInKilobytes パラメータを 0
以外の値に設定する。関数が失敗した場合、FALSE を返し、TotalMemoryInKilobytes
パラメータを変更しない。拡張エラー情報を取得するには GetLastError 関数を使用する。一般的なエラーは以下の表に示す。
(以下省略)

[備考]
GetPhysicallyInstalledSystemMemory 関数は、コンピュータの SMBIOS
ファームウェアテーブルから物理的に搭載された RAM の量を取得する。これは GlobalMemoryStatusEx
関数が報告する量とは異なる場合がある。GlobalMemoryStatusEx は MEMORYSTATUSEX 構造体の
ullTotalPhys メンバに、オペレーティングシステムが利用可能な物理メモリの量を設定する。BIOS
や一部のドライバがメモリマップドデバイス用の I/O
領域としてメモリを予約する場合があり、これによりオペレーティングシステムやアプリケーションが利用できないことがあるため、オペレーティングシステムが利用可能なメモリ量はコンピュータに物理的に搭載されたメモリ量より少ないことがある。GetPhysicallyInstalledSystemMemory
関数で取得される物理メモリ量は、GlobalMemoryStatusEx
が報告する量以上でなければならない。それ以下である場合、SMBIOS データが不正であり、関数は ERROR_INVALID_DATA
で失敗する。SMBIOS データが不正である場合、ユーザーのコンピュータに問題がある可能性がある。

情報

プラグイン / モジュールkernel32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の kernel32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_kernel32_gen2.hs