IVssBackupComponents::D isableWriterClasses メソッド (vsbackup.h)
DisableWriterClasses メソッドを使用すると、ライターの特定のクラスがイベントを受信できなくなります。
構文
HRESULT DisableWriterClasses(
[in] const VSS_ID *rgWriterClassId,
[in] UINT cClassId
);
パラメーター
[in] rgWriterClassId
1 つ以上のライター クラス識別子を含む配列。
[in] cClassId
rgWriterClassId 配列内のエントリの数。
戻り値
このメソッドの有効なリターン コードを次に示します。
値 | 説明 |
---|---|
|
ライター クラスが正常に無効になりました。 |
|
呼び出し元に十分なバックアップ特権がないか、管理者ではありません。 |
|
呼び出し元がメモリ不足またはその他のシステム リソースです。 |
|
バックアップ コンポーネント オブジェクトが初期化されていないか、復元操作中にこのメソッドが呼び出されたか、このメソッドが正しいシーケンス内で呼び出されていません。 |
|
予期しないエラー。 エラー コードはエラー ログ ファイルに記録されます。 詳細については、「 VSS でのイベントとエラーの処理」を参照してください。
Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: この値は、Windows Server 2008 R2 および Windows 7 まではサポートされません。 代わりに、E_UNEXPECTEDが使用されます。 |
解説
同じライターの複数の実行中のコピーがある場合、それらはすべて同じライター クラス識別子を持っていますが、ライター インスタンス識別子は異なります。 ライター クラスを無効にすると、ライターのすべてのインスタンスが無効になります。
DisableWriterClasses メソッドと IVssBackupComponents::EnableWriterClasses メソッドが呼び出されない場合、すべてのライター クラスが有効になります。
DisableWriterClasses の最初の呼び出しが返されると、rgWriterClassId 配列で指定されたライター クラスが無効になり、他のすべてのライター クラスが有効になります。
DisableWriterClasses を複数回呼び出すと、各呼び出しによって rgWriterClassId 配列内のライターが無効になっているライターの一覧に追加されます。
DisableWriterClasses を 1 回以上呼び出してから EnableWriterClasses を呼び出した場合、EnableWriterClasses の最初の呼び出しは DisableWriterClasses の呼び出しの効果を取り消し、rgWriterClassId 配列内のライターのみを有効にします。
DisableWriterClasses を呼び出す場合は、IVssBackupComponents::GatherWriterMetadata メソッドを呼び出す前に実行する必要があります。 GatherWriterMetadata を最初に呼び出してから DisableWriterClasses を呼び出した場合、DisableWriterClasses の呼び出しは無効になります。 GatherWriterMetadata を最初に呼び出す必要がある場合は、無効にするライター クラスを決定するために、IVssBackupComponents インターフェイスの別のインスタンスから呼び出す必要があります。
要件
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | vsbackup.h (VsBackup.h、Vss.h、VsWriter.h を含む) |
Library | VssApi.lib |