次の方法で共有


IVdsPack::ReplaceDisk メソッド (vds.h)

[Windows 8とWindows Server 2012以降、仮想ディスク サービス COM インターフェイスは Windows Storage Management API に置き換えられます。

サポートされていません。

このメソッドは将来使用するために予約されています。

構文

HRESULT ReplaceDisk(
  [in]  VDS_OBJECT_ID OldDiskId,
  [in]  VDS_OBJECT_ID NewDiskId,
  [out] IVdsAsync     **ppAsync
);

パラメーター

[in] OldDiskId

古いディスクの GUID。

[in] NewDiskId

新しいディスクの GUID。

[out] ppAsync

戻り時に VDS が初期化する IVdsAsync インターフェイス ポインターのアドレス。 呼び出し元はインターフェイスを解放する必要があります。 このインターフェイスを使用して、操作の状態を取り消す、待機する、またはクエリを実行します。

戻り値

このメソッドは、E_INVALIDARGやE_OUTOFMEMORYなどの標準の HRESULT 値と、 VDS 固有の戻り値を返すことができます。 また、HRESULT_FROM_WIN32 マクロを使用して、変換されたシステム エラー コードを返すこともできます。 エラーは、VDS 自体または使用されている基になる VDS プロバイダー から発生する可能性があります。 可能な戻り値は次のとおりです。

リターン コード/値 説明
S_OK
ディスクの交換が正常に完了しました。
VDS_E_NOT_SUPPORTED
0x80042400L
このメソッドは、このリリースではサポートされていません。

注釈

呼び出し元は、メディアの移行 (古いディスクを新しいディスクに置き換える) またはフォールト トレラント セットを、欠落しているメンバーまたは失敗したメンバー (特にホット スペーリングを実装していないプロバイダー) で修復する場合に使用できます。

新しいディスクは古いディスクと同じパックに含まれている必要があり、データを含めることはできません。パーティション分割スタイルが間違っている可能性があります。 置換が成功した場合、古いディスクはパーティション分割スタイルを保持しますが、有効なボリュームは保持しません。

実装者は、呼び出しが非同期操作を開始するかどうかに関係なく、このメソッドの IVdsAsync インターフェイスへのポインターを返す必要があります。 プロバイダーがホット スペーリングを実装していない場合は、failed-member シナリオをサポートする必要があります。呼び出し元が ReplaceDisk メソッドを呼び出した後で、公開されているフォールト トレラント ボリュームの同期をもう一度開始します。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー vds.h
Library Uuid.lib