CVssWriter::Initialize メソッド (vswriter.h)
CVssWriter オブジェクトを初期化し、ライター アプリケーションが VSS と対話できるようにします。
Initialize は、 CVssWriter 基本クラスによって実装されるパブリック メソッドです。
構文
HRESULT Initialize(
[in] VSS_ID WriterId,
[in] LPCWSTR wszWriterName,
[in] VSS_USAGE_TYPE ut,
[in] VSS_SOURCE_TYPE st,
[in] VSS_APPLICATION_LEVEL nLevel,
[in] DWORD dwTimeoutFreeze,
[in] VSS_ALTERNATE_WRITER_STATE aws,
[in] bool bIOThrottlingOnly,
[in] LPCWSTR wszWriterInstanceName
);
パラメーター
[in] WriterId
ライター クラスのグローバル一意識別子 (GUID)。
[in] wszWriterName
ライターの名前を含む null で終わるワイド文字列。 この文字列はローカライズされていません。
[in] ut
ライターによって管理されるデータがホスト システムでどのように使用されるかを示す VSS_USAGE_TYPE列挙値 。
[in] st
ライターによって管理されるデータの種類を示す VSS_SOURCE_TYPE 列挙値。
[in] nLevel
ライターが Freeze イベント通知を受信するアプリケーション レベルを示すVSS_APPLICATION_LEVEL列挙値。
このパラメーターの既定値はVSS_APP_FRONT_ENDです。
[in] dwTimeoutFreeze
ライターによる Freeze イベント通知の受信と VSS からの一致する Thaw イベント通知の受信までの最大許容時間 (ミリ秒単位)。 タイムアウトが切れると、ライターの CSVsWriter::OnAbort メソッドが自動的に呼び出されます。
このパラメーターの既定値は 60000 です。
[in] aws
ライターに関連する代替ライターがあるかどうかを示すVSS_ALTERNATE_WRITER_STATE列挙値。
このパラメーターの既定値はVSS_AWS_NO_ALTERNATE_WRITERです。 呼び出し元は、この既定値をオーバーライドしないでください。 このパラメーターは将来使用するために予約されています。
[in] bIOThrottlingOnly
I/O 調整方法が有効な場合は true 、それ以外の場合は false に 設定します。
このパラメーターの既定値は false です。 呼び出し元は、この既定値をオーバーライドしないでください。 このパラメーターは将来使用するために予約されています。
[in] wszWriterInstanceName
ライター インスタンス名を含む null で終わるワイド文字列。
このパラメーターの既定値は NULL です。 ライターに複数のインスタンスがあり、復元イベントが必要な場合、このパラメーターは必須であり、 NULL にすることはできません。 詳細については、次の「解説」セクションを参照してください。
Windows Server 2003 および Windows XP: SP1 を使用する Windows Server 2003 より前の場合、このパラメーターはシステム用に予約されており、呼び出し元は既定値をオーバーライドしないでください。
戻り値
このメソッドの有効なリターン コードを次に示します。
値 | 説明 |
---|---|
|
ライター オブジェクトが正常に初期化されました。 |
|
ライター オブジェクトを初期化できませんでした。VSS ライター インフラストラクチャは、Windows がセーフ モードであったか、または設定されていたため、非アクティブでした。 |
|
呼び出し元は管理者ではありません。 |
|
パラメーター値の 1 つが無効です。 |
|
呼び出し元がメモリやその他のシステム リソースを使い切れている。 |
|
予期しないエラー。 エラー コードは、エラー ログ ファイルに記録されます。 詳細については、「 VSS でのイベントとエラーの処理」を参照してください。
Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: この値は、Windows Server 2008 R2 と Windows 7 まではサポートされません。 代わりに E_UNEXPECTED が使用されます。 |
解説
VSS は、ライター アプリケーションの各インスタンスに一意のライター インスタンス ID を割り当てます。 システム上に複数のインスタンスが同時に存在する場合 (たとえば、システム上で複数の SQL サーバーが実行されている場合)、各ライターは、ライター クラス ID とそのライター インスタンス ID の組み合わせによって一意に識別されます。
wszWriterInstanceName パラメーターを使用すると、マルチインスタンス ライターは、各ライター インスタンスの永続的な名前を人間が読み取り可能な文字列として指定できます。 この名前は、システム上のライターのすべてのインスタンスで一意である必要があります。 ライターに複数のインスタンスがあり、復元イベントが必要な場合は、このパラメーターに NULL 以外の文字列を指定する必要があります。 VSS はインスタンス名を使用して、マルチインスタンス ライターを正しく復元します。
要件
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | vswriter.h (Vss.h、VsWriter.h を含む) |
Library | VssApi.lib |