Click or drag to resize

STGM Enumeration

The STGM constants are flags that indicate conditions for creating and deleting the object and access modes for the object Maps to Windows' STGM Constants.

Namespace:  ShellBoost.Core.WindowsShell
Assembly:  ShellBoost.Core (in ShellBoost.Core.dll) Version: 1.8.3.0
Syntax
C#
[FlagsAttribute]
public enum STGM
Members
  Member nameValueDescription
STGM_DIRECT0 Indicates that, in direct mode, each change to a storage or stream element is written as it occurs. This is the default if neither STGM_DIRECT nor STGM_TRANSACTED is specified.
STGM_TRANSACTED65536 Indicates that, in transacted mode, changes are buffered and written only if an explicit commit operation is called.
STGM_SIMPLE134217728 Provides a faster implementation of a compound file in a limited, but frequently used, case
STGM_READ0 Indicates that the object is read-only, meaning that modifications cannot be made.
STGM_WRITE1 Enables you to save changes to the object, but does not permit access to its data.
STGM_READWRITE2 Enables access and modification of object data.
STGM_SHARE_DENY_NONE64 Specifies that subsequent openings of the object are not denied read or write access. If no flag from the sharing group is specified, this flag is assumed.
STGM_SHARE_DENY_READ48 Prevents others from subsequently opening the object in STGM_READ mode. It is typically used on a root storage object.
STGM_SHARE_DENY_WRITE32 Prevents others from subsequently opening the object for STGM_WRITE or STGM_READWRITE access.
STGM_SHARE_EXCLUSIVE16 Prevents others from subsequently opening the object in any mode. Be aware that this value is not a simple bitwise OR operation of the STGM_SHARE_DENY_READ and STGM_SHARE_DENY_WRITE values. In transacted mode, sharing of STGM_SHARE_DENY_WRITE or STGM_SHARE_EXCLUSIVE can significantly improve performance because they do not require snapshots.
STGM_PRIORITY262144 Opens the storage object with exclusive access to the most recently committed version
STGM_DELETEONRELEASE67108864 Indicates that the underlying file is to be automatically destroyed when the root storage object is released.
STGM_NOSCRATCH1048576 Indicates that, in transacted mode, a temporary scratch file is usually used to save modifications until the Commit method is called.
STGM_CREATE4096 Indicates that an existing storage object or stream should be removed before the new object replaces it. A new object is created when this flag is specified only if the existing object has been successfully removed.
STGM_CONVERT131072 Creates the new object while preserving existing data in a stream named "Contents".
STGM_FAILIFTHERE0 Causes the create operation to fail if an existing object with the specified name exists.
STGM_NOSNAPSHOT2097152 This flag is used when opening a storage object with STGM_TRANSACTED and without STGM_SHARE_EXCLUSIVE or STGM_SHARE_DENY_WRITE. In this case, specifying STGM_NOSNAPSHOT prevents the system-provided implementation from creating a snapshot copy of the file.
STGM_DIRECT_SWMR4194304 Supports direct mode for single-writer, multireader file operations.
See Also