IStream_Commit

Commit メソッドは、トランザクションモードで開かれたストリームオブジェクトに対する変更が親ストレージに反映されることを保証する。

IStream_Commit this, grfCommitFlags

this : [comobj] IStream インターフェースの COM オブジェクト変数
grfCommitFlags : [int] ストリームオブジェクトの変更がコミットされる方法を制御する。これらの値の定義については STGC 列挙を参照。

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

解説

Commit メソッドは、トランザクションモードで開かれたストリームオブジェクトに対する変更が親ストレージに反映されることを保証する。

[戻り値]
このメソッドは次のいずれかの値を返す。 | リターンコード | 説明 |
|----------------|---------------| |S_OK |
ストリームオブジェクトの変更が親レベルに正常にコミットされた。| |E_PENDING | 非同期ストレージのみ:
ストリームのデータの一部または全部が現在利用できない。 | |STG_E_MEDIUMFULL |
ストレージデバイスの空き容量不足のためコミット操作が失敗した。| |STG_E_REVERTED | トランザクションツリーの上位の
revert 操作によりオブジェクトが無効化された。|

[備考]
Commit
メソッドは、トランザクションモードで開かれたストリームオブジェクトに対する変更が親ストレージに反映されることを保証する。ストリームが開かれてから、または最後にコミットされてから行われた変更が親ストレージオブジェクトに反映される。親がトランザクションモードで開かれている場合、親は後で
revert
する可能性があり、このストリームオブジェクトへの変更がロールバックされる。複合ファイル実装ではトランザクションモードでのストリームの開放はサポートされないため、このメソッドはメモリバッファをフラッシュする以外にほとんど効果がない。詳細は
IStream - Compound File Implementation
を参照。ストリームが直接モードで開かれている場合、このメソッドはメモリバッファが基礎となるストレージオブジェクトにフラッシュされていることを保証する。これは従来のファイルシステムのフラッシュによく似ている。IStream::Commit
メソッドは、IStream インターフェースの実装が基礎となるファイルシステム API
のラッパである直接モードのストリームに対して有用である。この場合、IStream::Commit
はファイルシステムのフラッシュ呼び出しに接続される。

情報

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