SetFileIoOverlappedRange

指定したファイルハンドルに仮想アドレス範囲を関連付ける。

SetFileIoOverlappedRange FileHandle, OverlappedRangeStart, Length

FileHandle : [intptr] ファイルへのハンドル。このファイルハンドルは FILE_READ_ATTRIBUTES アクセス権でオープンされている必要がある。
OverlappedRangeStart : [var] 範囲の開始アドレス。
Length : [int] 範囲の長さ (バイト単位)。

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

解説

指定したファイルハンドルに仮想アドレス範囲を関連付ける。

[戻り値]
成功した場合は非ゼロ、そうでない場合はゼロを返す。拡張エラー情報を取得するには GetLastError を呼び出す。

[備考]
SetFileIoOverlappedRange は、多数の非同期アンバッファ I/O
を発行し、定義済みのオーバーラップ構造体範囲を使用するアプリケーションのパフォーマンス向上に利用できる。この範囲はメモリ内でロックされるため、カーネルは
I/O 要求結果でオーバーラップ構造体を更新する際に特定のロック取得を回避できる。SetFileIoOverlappedRange
は呼び出し側に SeLockMemoryPrivilege アクセス権を要求する。バッファ I/O および同期 I/O
には影響しない。Windows 8 および Windows Server 2012 では、この関数は以下の技術によってサポートされている。
(以下省略)

情報

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