Win32 API 日本語リファレンス
ホームStorage.Vss › VSS_VOLUME_SNAPSHOT_ATTRIBUTES

VSS_VOLUME_SNAPSHOT_ATTRIBUTES

列挙型
基底型i4

メンバー 19

名前10進16進説明
VSS_VOLSNAP_ATTR_PERSISTENT10x1

シャドウコピーは再起動後も保持されます。

この属性は、_VSS_SNAPSHOT_CONTEXTVSS_CTX_APP_ROLLBACKVSS_CTX_CLIENT_ACCESSIBLEVSS_CTX_CLIENT_ACCESSIBLE_WRITERSVSS_CTX_NAS_ROLLBACK の各コンテキストに対して自動的に設定されます。

この属性は、シャドウコピーのコンテキストを設定する際にリクエスターが明示的に使用すべきではありません。

VSS_VOLSNAP_ATTR_NO_AUTORECOVERY20x2

シャドウコピーに対して自動回復が無効になります。

リクエスターは、この属性とのビット単位のOR によってシャドウコピーのコンテキストを変更できます。これにより、リクエスターは VSS に対して、ライターや他のアプリケーションがシャドウコピー内のコンポーネントを更新できないようにしたうえで、作成直後にシャドウコピーを読み取り専用にするよう指示します。

自動回復を無効にすると、いずれかのコンポーネントが、トランザクション NTFS (TxF) によって管理されるトランザクション対応の読み取り操作や書き込み操作などのトランザクション データベース操作に関与している場合に、シャドウコピーが不整合な状態になることがあります。これは、自動回復を無効にすると未完了のトランザクションがロールバックされなくなるためです。

また、自動回復を無効にすると、ライターがシャドウコピーからファイルを除外することもできなくなります。自動回復が無効な場合でも、ライターは IVssCreateWriterMetadataEx::AddExcludeFilesFromSnapshot メソッドを呼び出せますが、ライターの CVssWriter::OnPostSnapshot メソッドはシャドウコピーからファイルを削除できません。

Windows Server 2003 および Windows XP: この値は Windows Vista 以降でのみサポートされます。

VSS_VOLSNAP_ATTR_CLIENT_ACCESSIBLE40x4

指定されたシャドウコピーは、共有フォルダーのシャドウ コピーをサポートするクライアントからアクセス可能なシャドウコピーであり、公開すべきではありません。

この属性は、VSS_CTX_CLIENT_ACCESSIBLE および VSS_CTX_CLIENT_ACCESSIBLE_WRITERS に対して自動的に設定されます。

この属性は、シャドウコピーのコンテキストを設定する際にリクエスターが明示的に使用すべきではありません。

VSS_VOLSNAP_ATTR_NO_AUTO_RELEASE80x8

シャドウコピーは、シャドウコピーのリクエスター プロセスが終了しても自動的には削除されません。このシャドウコピーは、IVssBackupComponents::DeleteSnapshots の呼び出しによってのみ削除できます。

この属性は、_VSS_SNAPSHOT_CONTEXTVSS_CTX_APP_ROLLBACKVSS_CTX_CLIENT_ACCESSIBLEVSS_CTX_CLIENT_ACCESSIBLE_WRITERSVSS_CTX_NAS_ROLLBACK の各コンテキストに対して自動的に設定されます。

この属性は、シャドウコピーのコンテキストを設定する際にリクエスターが明示的に使用すべきではありません。

VSS_VOLSNAP_ATTR_NO_WRITERS160x10

シャドウコピーの作成にライターが関与しません。

この属性は、_VSS_SNAPSHOT_CONTEXTVSS_CTX_NAS_ROLLBACKVSS_CTX_FILE_SHARE_BACKUPVSS_CTX_CLIENT_ACCESSIBLE の各コンテキストに対して自動的に設定されます。

この属性は、シャドウコピーのコンテキストを設定する際にリクエスターが明示的に使用すべきではありません。

VSS_VOLSNAP_ATTR_TRANSPORTABLE320x20

シャドウコピーは転送されるものであるため、ローカルで公開すべきではありません。

シャドウコピーのプロバイダーが転送可能なシャドウコピーをサポートしている場合、この属性はシャドウコピーのコンテキストを設定する際にリクエスターが明示的に使用できます。

Windows Server 2003 Standard Edition、Windows Server 2003 Web Edition および Windows XP: この属性はサポートされません。SP1 適用済みの Windows Server 2003 のすべてのエディションはこの属性をサポートします。

詳細については、Importing Transportable Shadow Copied Volumes を参照してください。

VSS_VOLSNAP_ATTR_NOT_SURFACED640x40

シャドウコピーは現在公開されていません。

シャドウコピーが明示的に公開またはマウントされていない限り、この属性はすべてのシャドウコピーに設定されます。

この属性は、シャドウコピーのコンテキストを設定する際にリクエスターが明示的に使用すべきではありません。

VSS_VOLSNAP_ATTR_NOT_TRANSACTED1280x80

シャドウコピーはトランザクション処理されません。

リクエスターは、この属性とのビット単位のOR によってシャドウコピーのコンテキストを変更できます。これにより、リクエスターは VSS に対して、VSS とトランザクション マネージャーおよびリソース マネージャーとの間の組み込みの統合を無効にするよう指示します。

この属性を設定すると、リクエスターが VSS_E_TRANSACTION_FREEZE_TIMEOUT エラーを受け取らないことが保証されます。ただし、トランザクションの整合性の喪失やデータ損失など、望ましくない結果を招く可能性があります。

Windows Server 2003 および Windows XP: この値は Windows Vista 以降でのみサポートされます。

VSS_VOLSNAP_ATTR_HARDWARE_ASSISTED655360x10000

指定されたプロバイダーがハードウェア プロバイダーであることを示します。

この属性はハードウェア プロバイダーに対して自動的に設定されます。

この列挙値は、本列挙値と _VSS_SNAPSHOT_CONTEXT の有効なシャドウコピー コンテキスト値とのビットマスク(ビット単位のOR)によって(IVssBackupComponents::SetContext メソッドを使用して)シャドウコピーのコンテキストを手動で設定する用途には使用できません。

VSS_VOLSNAP_ATTR_DIFFERENTIAL1310720x20000

指定されたプロバイダーが、シャドウコピーの実装に差分データまたはコピー オン ライトの機構を使用することを示します。

リクエスターは、この属性とのビット単位のOR によってシャドウコピーのコンテキストを変更できます。これにより、リクエスターはプロバイダーに対して、差分方式の実装を使用してシャドウコピーを作成するよう指示します。要求された属性をサポートするシャドウコピー プロバイダーがシステムに 1 つもインストールされていない場合は、IVssBackupComponents::AddToSnapshotSetVSS_E_VOLUME_NOT_SUPPORTED エラーが返されます。

VSS_VOLSNAP_ATTR_PLEX2621440x40000

指定されたプロバイダーが、シャドウコピーの実装に PLEX またはミラー分割の機構を使用することを示します。

リクエスターは、この属性とのビット単位のOR によってシャドウコピーのコンテキストを変更できます。これにより、リクエスターはプロバイダーに対して、PLEX 方式の実装を使用してシャドウコピーを作成するよう指示します。要求された属性をサポートするシャドウコピー プロバイダーがシステムに 1 つもインストールされていない場合は、IVssBackupComponents::AddToSnapshotSetVSS_E_VOLUME_NOT_SUPPORTED エラーが返されます。

VSS_VOLSNAP_ATTR_IMPORTED5242880x80000

ボリュームのシャドウコピーが、IVssBackupComponents::DoSnapshotSet メソッドで作成されたのではなく、IVssBackupComponents::ImportSnapshots メソッドを使用してこのコンピューターにインポートされたことを示します。

この属性は、シャドウコピーがインポートされた場合に自動的に設定されます。

この属性は、シャドウコピーのコンテキストを設定する際にリクエスターが明示的に使用すべきではありません。

VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY10485760x100000

シャドウコピーはローカルで公開されています。このビット フラグと VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY ビット フラグのいずれも設定されていない場合、シャドウコピーは非表示になります。

この属性は、シャドウコピーをローカルで公開するために IVssBackupComponents::ExposeSnapshot メソッドを呼び出したときに、シャドウコピーのコンテキストへ自動的に追加されます。

この属性は、シャドウコピーのコンテキストを設定する際にリクエスターが明示的に使用すべきではありません。

VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY20971520x200000

シャドウコピーはリモートで公開されています。このビット フラグと VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY ビット フラグのいずれも設定されていない場合、シャドウコピーは非表示になります。

この属性は、シャドウコピーをローカルで公開するために IVssBackupComponents::ExposeSnapshot メソッドを呼び出したときに、シャドウコピーのコンテキストへ自動的に追加されます。

この属性は、シャドウコピーのコンテキストを設定する際にリクエスターが明示的に使用すべきではありません。

VSS_VOLSNAP_ATTR_AUTORECOVER41943040x400000

ライターが CVssWriter::OnPostSnapshot でコンポーネントを自動回復する必要があることを示します。

この属性は、シャドウコピーのコンテキストを設定する際にリクエスターが明示的に使用すべきではありません。

VSS_VOLSNAP_ATTR_ROLLBACK_RECOVERY83886080x800000

シャドウコピーがロールバック(たとえばデータ マイニング)に使用される場合に、ライターが CVssWriter::OnPostSnapshot でコンポーネントを自動回復する必要があることを示します。

リクエスターは、シャドウコピーがデータ マイニングなどバックアップ以外の目的で作成されることを示すために、シャドウコピーのコンテキストでこのフラグを設定します。

VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT167772160x1000000

システムでの使用のために予約済みです。

Windows Vista、Windows Server 2003 および Windows XP: この値は Windows Server 2008 以降でのみサポートされます。

VSS_VOLSNAP_ATTR_TXF_RECOVERY335544320x2000000

シャドウコピーの作成中に TxF の回復を強制することを示します。

Windows Vista、Windows Server 2003 および Windows XP: この値は Windows Server 2008 以降でのみサポートされます。

VSS_VOLSNAP_ATTR_FILE_SHARE671088640x4000000

公式ドキュメント

シャドウコピーに対して追加の属性を指定できるようにします。シャドウコピーのコンテキスト(IVssBackupComponents::SetContext メソッドで設定されます)は、_VSS_VOLUME_SNAPSHOT_ATTRIBUTES_VSS_SNAPSHOT_CONTEXT 列挙型の値の有効な組み合わせを含むビットマスクによって変更できます。

解説(Remarks)

VSS シャドウコピーの既定のコンテキストは VSS_CTX_BACKUP です。

リクエスターは、_VSS_SNAPSHOT_CONTEXT 列挙型のメンバーを IVssBackupComponents::SetContext メソッドに渡すことで、これから作成するシャドウコピーのコンテキストを設定します。

リクエスターは、_VSS_SNAPSHOT_CONTEXT の値と _VSS_VOLUME_SNAPSHOT_ATTRIBUTES 列挙型のサポートされる値とのビット単位のOR を IVssBackupComponents::SetContext の引数として使用することで、このコンテキストを変更できます。

特定の機構をサポートするよう明示的に要求されない限り、プロバイダーはシャドウコピーの実装に任意の種類の機構を自由に使用できます。したがって、シャドウコピーの方式が指定されていない場合、プロバイダーは差分方式 (VSS_VOLSNAP_ATTR_DIFFERENTIAL)、PLEX 方式 (VSS_VOLSNAP_ATTR_PLEX)、またはその他の任意の機構を自由に選択してシャドウコピーをサポートできます。

プロバイダーは両方の機構をサポートできますが、特定のシャドウコピーにおいては相互に排他的です。リクエスターは、特定のシャドウコピーのコンテキストを変更する際に VSS_VOLSNAP_ATTR_DIFFERENTIALVSS_VOLSNAP_ATTR_PLEX の両方を使用すべきではありません。

現在のところ、任意のコンテキストの変更に使用できる _VSS_VOLUME_SNAPSHOT_ATTRIBUTES 列挙型の値は、VSS_VOLSNAP_ATTR_DIFFERENTIALVSS_VOLSNAP_ATTR_PLEXVSS_VOLSNAP_ATTR_TRANSPORTABLE のみです。

さらに、これらは VSS_CTX_CLIENT_ACCESSIBLE コンテキストの変更には使用できません。

リクエスターは、IVssBackupComponents::GetSnapshotProperties の呼び出しによって返される VSS_OBJECT_PROP 構造体から VSS_SNAPSHOT_PROP 構造体を取り出すことで、特定のシャドウコピー(VSS_ID で識別されます)に関する情報を取得できます。

また、リクエスターは IVssBackupComponents::Query を呼び出し、IVssEnumObject を使用して結果を列挙することで、複数のシャドウコピーそれぞれの VSS_SNAPSHOT_PROP 構造体を取得することもできます。

シャドウコピーのコンテキストと属性は、VSS_SNAPSHOT_PROP 構造体の m_lSnapshotAttributes メンバーに含まれるビットマスクとして得られます。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum VSS_VOLUME_SNAPSHOT_ATTRIBUTES : int {
    VSS_VOLSNAP_ATTR_PERSISTENT = 1,
    VSS_VOLSNAP_ATTR_NO_AUTORECOVERY = 2,
    VSS_VOLSNAP_ATTR_CLIENT_ACCESSIBLE = 4,
    VSS_VOLSNAP_ATTR_NO_AUTO_RELEASE = 8,
    VSS_VOLSNAP_ATTR_NO_WRITERS = 16,
    VSS_VOLSNAP_ATTR_TRANSPORTABLE = 32,
    VSS_VOLSNAP_ATTR_NOT_SURFACED = 64,
    VSS_VOLSNAP_ATTR_NOT_TRANSACTED = 128,
    VSS_VOLSNAP_ATTR_HARDWARE_ASSISTED = 65536,
    VSS_VOLSNAP_ATTR_DIFFERENTIAL = 131072,
    VSS_VOLSNAP_ATTR_PLEX = 262144,
    VSS_VOLSNAP_ATTR_IMPORTED = 524288,
    VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY = 1048576,
    VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY = 2097152,
    VSS_VOLSNAP_ATTR_AUTORECOVER = 4194304,
    VSS_VOLSNAP_ATTR_ROLLBACK_RECOVERY = 8388608,
    VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT = 16777216,
    VSS_VOLSNAP_ATTR_TXF_RECOVERY = 33554432,
    VSS_VOLSNAP_ATTR_FILE_SHARE = 67108864
} VSS_VOLUME_SNAPSHOT_ATTRIBUTES;
public enum VSS_VOLUME_SNAPSHOT_ATTRIBUTES : int
{
    VSS_VOLSNAP_ATTR_PERSISTENT = 1,
    VSS_VOLSNAP_ATTR_NO_AUTORECOVERY = 2,
    VSS_VOLSNAP_ATTR_CLIENT_ACCESSIBLE = 4,
    VSS_VOLSNAP_ATTR_NO_AUTO_RELEASE = 8,
    VSS_VOLSNAP_ATTR_NO_WRITERS = 16,
    VSS_VOLSNAP_ATTR_TRANSPORTABLE = 32,
    VSS_VOLSNAP_ATTR_NOT_SURFACED = 64,
    VSS_VOLSNAP_ATTR_NOT_TRANSACTED = 128,
    VSS_VOLSNAP_ATTR_HARDWARE_ASSISTED = 65536,
    VSS_VOLSNAP_ATTR_DIFFERENTIAL = 131072,
    VSS_VOLSNAP_ATTR_PLEX = 262144,
    VSS_VOLSNAP_ATTR_IMPORTED = 524288,
    VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY = 1048576,
    VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY = 2097152,
    VSS_VOLSNAP_ATTR_AUTORECOVER = 4194304,
    VSS_VOLSNAP_ATTR_ROLLBACK_RECOVERY = 8388608,
    VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT = 16777216,
    VSS_VOLSNAP_ATTR_TXF_RECOVERY = 33554432,
    VSS_VOLSNAP_ATTR_FILE_SHARE = 67108864,
}
Public Enum VSS_VOLUME_SNAPSHOT_ATTRIBUTES As Integer
    VSS_VOLSNAP_ATTR_PERSISTENT = 1
    VSS_VOLSNAP_ATTR_NO_AUTORECOVERY = 2
    VSS_VOLSNAP_ATTR_CLIENT_ACCESSIBLE = 4
    VSS_VOLSNAP_ATTR_NO_AUTO_RELEASE = 8
    VSS_VOLSNAP_ATTR_NO_WRITERS = 16
    VSS_VOLSNAP_ATTR_TRANSPORTABLE = 32
    VSS_VOLSNAP_ATTR_NOT_SURFACED = 64
    VSS_VOLSNAP_ATTR_NOT_TRANSACTED = 128
    VSS_VOLSNAP_ATTR_HARDWARE_ASSISTED = 65536
    VSS_VOLSNAP_ATTR_DIFFERENTIAL = 131072
    VSS_VOLSNAP_ATTR_PLEX = 262144
    VSS_VOLSNAP_ATTR_IMPORTED = 524288
    VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY = 1048576
    VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY = 2097152
    VSS_VOLSNAP_ATTR_AUTORECOVER = 4194304
    VSS_VOLSNAP_ATTR_ROLLBACK_RECOVERY = 8388608
    VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT = 16777216
    VSS_VOLSNAP_ATTR_TXF_RECOVERY = 33554432
    VSS_VOLSNAP_ATTR_FILE_SHARE = 67108864
End Enum
import enum

class VSS_VOLUME_SNAPSHOT_ATTRIBUTES(enum.IntEnum):
    VSS_VOLSNAP_ATTR_PERSISTENT = 1
    VSS_VOLSNAP_ATTR_NO_AUTORECOVERY = 2
    VSS_VOLSNAP_ATTR_CLIENT_ACCESSIBLE = 4
    VSS_VOLSNAP_ATTR_NO_AUTO_RELEASE = 8
    VSS_VOLSNAP_ATTR_NO_WRITERS = 16
    VSS_VOLSNAP_ATTR_TRANSPORTABLE = 32
    VSS_VOLSNAP_ATTR_NOT_SURFACED = 64
    VSS_VOLSNAP_ATTR_NOT_TRANSACTED = 128
    VSS_VOLSNAP_ATTR_HARDWARE_ASSISTED = 65536
    VSS_VOLSNAP_ATTR_DIFFERENTIAL = 131072
    VSS_VOLSNAP_ATTR_PLEX = 262144
    VSS_VOLSNAP_ATTR_IMPORTED = 524288
    VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY = 1048576
    VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY = 2097152
    VSS_VOLSNAP_ATTR_AUTORECOVER = 4194304
    VSS_VOLSNAP_ATTR_ROLLBACK_RECOVERY = 8388608
    VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT = 16777216
    VSS_VOLSNAP_ATTR_TXF_RECOVERY = 33554432
    VSS_VOLSNAP_ATTR_FILE_SHARE = 67108864
// VSS_VOLUME_SNAPSHOT_ATTRIBUTES
pub const VSS_VOLSNAP_ATTR_PERSISTENT: i32 = 1;
pub const VSS_VOLSNAP_ATTR_NO_AUTORECOVERY: i32 = 2;
pub const VSS_VOLSNAP_ATTR_CLIENT_ACCESSIBLE: i32 = 4;
pub const VSS_VOLSNAP_ATTR_NO_AUTO_RELEASE: i32 = 8;
pub const VSS_VOLSNAP_ATTR_NO_WRITERS: i32 = 16;
pub const VSS_VOLSNAP_ATTR_TRANSPORTABLE: i32 = 32;
pub const VSS_VOLSNAP_ATTR_NOT_SURFACED: i32 = 64;
pub const VSS_VOLSNAP_ATTR_NOT_TRANSACTED: i32 = 128;
pub const VSS_VOLSNAP_ATTR_HARDWARE_ASSISTED: i32 = 65536;
pub const VSS_VOLSNAP_ATTR_DIFFERENTIAL: i32 = 131072;
pub const VSS_VOLSNAP_ATTR_PLEX: i32 = 262144;
pub const VSS_VOLSNAP_ATTR_IMPORTED: i32 = 524288;
pub const VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY: i32 = 1048576;
pub const VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY: i32 = 2097152;
pub const VSS_VOLSNAP_ATTR_AUTORECOVER: i32 = 4194304;
pub const VSS_VOLSNAP_ATTR_ROLLBACK_RECOVERY: i32 = 8388608;
pub const VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT: i32 = 16777216;
pub const VSS_VOLSNAP_ATTR_TXF_RECOVERY: i32 = 33554432;
pub const VSS_VOLSNAP_ATTR_FILE_SHARE: i32 = 67108864;
// VSS_VOLUME_SNAPSHOT_ATTRIBUTES
const (
	VSS_VOLSNAP_ATTR_PERSISTENT int32 = 1
	VSS_VOLSNAP_ATTR_NO_AUTORECOVERY int32 = 2
	VSS_VOLSNAP_ATTR_CLIENT_ACCESSIBLE int32 = 4
	VSS_VOLSNAP_ATTR_NO_AUTO_RELEASE int32 = 8
	VSS_VOLSNAP_ATTR_NO_WRITERS int32 = 16
	VSS_VOLSNAP_ATTR_TRANSPORTABLE int32 = 32
	VSS_VOLSNAP_ATTR_NOT_SURFACED int32 = 64
	VSS_VOLSNAP_ATTR_NOT_TRANSACTED int32 = 128
	VSS_VOLSNAP_ATTR_HARDWARE_ASSISTED int32 = 65536
	VSS_VOLSNAP_ATTR_DIFFERENTIAL int32 = 131072
	VSS_VOLSNAP_ATTR_PLEX int32 = 262144
	VSS_VOLSNAP_ATTR_IMPORTED int32 = 524288
	VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY int32 = 1048576
	VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY int32 = 2097152
	VSS_VOLSNAP_ATTR_AUTORECOVER int32 = 4194304
	VSS_VOLSNAP_ATTR_ROLLBACK_RECOVERY int32 = 8388608
	VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT int32 = 16777216
	VSS_VOLSNAP_ATTR_TXF_RECOVERY int32 = 33554432
	VSS_VOLSNAP_ATTR_FILE_SHARE int32 = 67108864
)
const
  VSS_VOLSNAP_ATTR_PERSISTENT = 1;
  VSS_VOLSNAP_ATTR_NO_AUTORECOVERY = 2;
  VSS_VOLSNAP_ATTR_CLIENT_ACCESSIBLE = 4;
  VSS_VOLSNAP_ATTR_NO_AUTO_RELEASE = 8;
  VSS_VOLSNAP_ATTR_NO_WRITERS = 16;
  VSS_VOLSNAP_ATTR_TRANSPORTABLE = 32;
  VSS_VOLSNAP_ATTR_NOT_SURFACED = 64;
  VSS_VOLSNAP_ATTR_NOT_TRANSACTED = 128;
  VSS_VOLSNAP_ATTR_HARDWARE_ASSISTED = 65536;
  VSS_VOLSNAP_ATTR_DIFFERENTIAL = 131072;
  VSS_VOLSNAP_ATTR_PLEX = 262144;
  VSS_VOLSNAP_ATTR_IMPORTED = 524288;
  VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY = 1048576;
  VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY = 2097152;
  VSS_VOLSNAP_ATTR_AUTORECOVER = 4194304;
  VSS_VOLSNAP_ATTR_ROLLBACK_RECOVERY = 8388608;
  VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT = 16777216;
  VSS_VOLSNAP_ATTR_TXF_RECOVERY = 33554432;
  VSS_VOLSNAP_ATTR_FILE_SHARE = 67108864;
// VSS_VOLUME_SNAPSHOT_ATTRIBUTES
pub const VSS_VOLSNAP_ATTR_PERSISTENT: i32 = 1;
pub const VSS_VOLSNAP_ATTR_NO_AUTORECOVERY: i32 = 2;
pub const VSS_VOLSNAP_ATTR_CLIENT_ACCESSIBLE: i32 = 4;
pub const VSS_VOLSNAP_ATTR_NO_AUTO_RELEASE: i32 = 8;
pub const VSS_VOLSNAP_ATTR_NO_WRITERS: i32 = 16;
pub const VSS_VOLSNAP_ATTR_TRANSPORTABLE: i32 = 32;
pub const VSS_VOLSNAP_ATTR_NOT_SURFACED: i32 = 64;
pub const VSS_VOLSNAP_ATTR_NOT_TRANSACTED: i32 = 128;
pub const VSS_VOLSNAP_ATTR_HARDWARE_ASSISTED: i32 = 65536;
pub const VSS_VOLSNAP_ATTR_DIFFERENTIAL: i32 = 131072;
pub const VSS_VOLSNAP_ATTR_PLEX: i32 = 262144;
pub const VSS_VOLSNAP_ATTR_IMPORTED: i32 = 524288;
pub const VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY: i32 = 1048576;
pub const VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY: i32 = 2097152;
pub const VSS_VOLSNAP_ATTR_AUTORECOVER: i32 = 4194304;
pub const VSS_VOLSNAP_ATTR_ROLLBACK_RECOVERY: i32 = 8388608;
pub const VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT: i32 = 16777216;
pub const VSS_VOLSNAP_ATTR_TXF_RECOVERY: i32 = 33554432;
pub const VSS_VOLSNAP_ATTR_FILE_SHARE: i32 = 67108864;
const
  VSS_VOLSNAP_ATTR_PERSISTENT* = 1
  VSS_VOLSNAP_ATTR_NO_AUTORECOVERY* = 2
  VSS_VOLSNAP_ATTR_CLIENT_ACCESSIBLE* = 4
  VSS_VOLSNAP_ATTR_NO_AUTO_RELEASE* = 8
  VSS_VOLSNAP_ATTR_NO_WRITERS* = 16
  VSS_VOLSNAP_ATTR_TRANSPORTABLE* = 32
  VSS_VOLSNAP_ATTR_NOT_SURFACED* = 64
  VSS_VOLSNAP_ATTR_NOT_TRANSACTED* = 128
  VSS_VOLSNAP_ATTR_HARDWARE_ASSISTED* = 65536
  VSS_VOLSNAP_ATTR_DIFFERENTIAL* = 131072
  VSS_VOLSNAP_ATTR_PLEX* = 262144
  VSS_VOLSNAP_ATTR_IMPORTED* = 524288
  VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY* = 1048576
  VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY* = 2097152
  VSS_VOLSNAP_ATTR_AUTORECOVER* = 4194304
  VSS_VOLSNAP_ATTR_ROLLBACK_RECOVERY* = 8388608
  VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT* = 16777216
  VSS_VOLSNAP_ATTR_TXF_RECOVERY* = 33554432
  VSS_VOLSNAP_ATTR_FILE_SHARE* = 67108864
enum VSS_VOLUME_SNAPSHOT_ATTRIBUTES : int {
    VSS_VOLSNAP_ATTR_PERSISTENT = 1,
    VSS_VOLSNAP_ATTR_NO_AUTORECOVERY = 2,
    VSS_VOLSNAP_ATTR_CLIENT_ACCESSIBLE = 4,
    VSS_VOLSNAP_ATTR_NO_AUTO_RELEASE = 8,
    VSS_VOLSNAP_ATTR_NO_WRITERS = 16,
    VSS_VOLSNAP_ATTR_TRANSPORTABLE = 32,
    VSS_VOLSNAP_ATTR_NOT_SURFACED = 64,
    VSS_VOLSNAP_ATTR_NOT_TRANSACTED = 128,
    VSS_VOLSNAP_ATTR_HARDWARE_ASSISTED = 65536,
    VSS_VOLSNAP_ATTR_DIFFERENTIAL = 131072,
    VSS_VOLSNAP_ATTR_PLEX = 262144,
    VSS_VOLSNAP_ATTR_IMPORTED = 524288,
    VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY = 1048576,
    VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY = 2097152,
    VSS_VOLSNAP_ATTR_AUTORECOVER = 4194304,
    VSS_VOLSNAP_ATTR_ROLLBACK_RECOVERY = 8388608,
    VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT = 16777216,
    VSS_VOLSNAP_ATTR_TXF_RECOVERY = 33554432,
    VSS_VOLSNAP_ATTR_FILE_SHARE = 67108864,
}
#define global VSS_VOLSNAP_ATTR_PERSISTENT           0x1
#define global VSS_VOLSNAP_ATTR_NO_AUTORECOVERY      0x2
#define global VSS_VOLSNAP_ATTR_CLIENT_ACCESSIBLE    0x4
#define global VSS_VOLSNAP_ATTR_NO_AUTO_RELEASE      0x8
#define global VSS_VOLSNAP_ATTR_NO_WRITERS           0x10
#define global VSS_VOLSNAP_ATTR_TRANSPORTABLE        0x20
#define global VSS_VOLSNAP_ATTR_NOT_SURFACED         0x40
#define global VSS_VOLSNAP_ATTR_NOT_TRANSACTED       0x80
#define global VSS_VOLSNAP_ATTR_HARDWARE_ASSISTED    0x10000
#define global VSS_VOLSNAP_ATTR_DIFFERENTIAL         0x20000
#define global VSS_VOLSNAP_ATTR_PLEX                 0x40000
#define global VSS_VOLSNAP_ATTR_IMPORTED             0x80000
#define global VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY      0x100000
#define global VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY     0x200000
#define global VSS_VOLSNAP_ATTR_AUTORECOVER          0x400000
#define global VSS_VOLSNAP_ATTR_ROLLBACK_RECOVERY    0x800000
#define global VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT 0x1000000
#define global VSS_VOLSNAP_ATTR_TXF_RECOVERY         0x2000000
#define global VSS_VOLSNAP_ATTR_FILE_SHARE           0x4000000