GetFileSize

指定されたファイルのサイズ(バイト単位)を取得する。

GetFileSize hFile, lpFileSizeHigh

hFile : [intptr] ファイルへのハンドル。
lpFileSizeHigh : [var] ファイルサイズの上位 DWORD を受け取る変数へのポインタ。上位 DWORD が不要ならば NULL を指定できる。

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

解説

指定されたファイルのサイズ(バイト単位)を取得する。

[戻り値]
関数が成功した場合、戻り値はファイルサイズの下位 DWORD で、lpFileSizeHigh が非 NULL なら上位 DWORD
を格納する。失敗して lpFileSizeHigh が NULL の場合、戻り値は INVALID_FILE_SIZE。
(以下省略)

[備考]
パイプや通信デバイスなどのシークできないデバイスのハンドルには使用できない。GetFileSize は未圧縮サイズを返す(圧縮サイズは
GetCompressedFileSize を使う)。戻り値が
INVALID_FILE_SIZE(0xffffffff)の場合、アプリケーションは GetLastError
を呼んで成功か失敗かを判定する必要がある(lpFileSizeHigh が非 NULL かファイルサイズが実際に 0xffffffff
の可能性があるため)。GetFileSizeEx を使うのが推奨される。

情報

プラグイン / モジュール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