DIRECT
ダイレクトモード
ストレージに対する変更はすぐに行われる。
TRANSACTED
トランザクトモード。
変更は明示的にコミットしなければ行われず、変更無視はIStream、IStorageインターフェイスのRevertメソッドで行われる。
SIMPLE
CREATE | READWRITE | SHARE_EXCLUSIVE
READ
WRITE
READWRITE
SHARE_DENY_NONE
SHARE_DENY_READ
SHARE_DENY_WRITE
SHARE_EXCLUSIVE
SHARE_DENY_READ | SHARE_DENY_WRITE
PRIORITY
ストレージを最も新しくコミットされたバージョンへの排他的アクセスで開く。
したがって、他のユーザーはその間ストレージに対してコミットすることが出来ない。STGM_DIRECT or STGM_READを設定しておかなくてはならない。
DELETEONRELEASE
CREATE
既存のストレージやストリームを破棄し、新しいものに置換える。
同名のストリームがある場合などに使用
CONVERT
CONTENTSと命名されたストリームに既存のデータを保存し新しいオブジェクトを生成する。
FAILIFTHERE
同名のオブジェクトが存在した場合、オブジェクトの生成に失敗する。
NOSCRATCH
(Win95のみ)トランザクトモードにおいて、スクラッチファイルがコミット前に保存されるようになる。
元のファイルの不使用領域がスクラッチスペースとして使用される。
NOSNAPSHOT
このフラグは TRANSACTED フラグが指定されており、かつ SHARE_EXCLUSIVE も SHARE_DENY_WRITE も指定されずにストレージを開くときに使用できます。この場合、NOSNAPSHOT の指定によって、システムが提供するファイルのスナップショットコピー作成機能を抑制できます。 そのかわりに、ファイルへの変更はそのファイルの末尾に書き込まれます。 未使用の領域は、コミット操作によって整理されるまで、または、ファイルの書き込み利用者が一人になるまで再利用されません。スナップショットなしでファイルを開いた場合、NOSNAPSHOT を指定せずに他の場所でファイルを開くことはできなくなります。このフラグは、ルートストレージを開く時のみ使用できます。