次の方法で共有


IVdsSubSystem::Reenumerate メソッド (vdshwprv.h)

[Windows 8とWindows Server 2012以降、Virtual Disk Service COM インターフェイスは Windows Storage Management API に置き換えられます。

新しく接続されたドライブまたは新しく切断されたドライブを検出するために、そのバスをスキャンするようにサブシステムに求めます。

構文

HRESULT Reenumerate();

戻り値

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

リターン コード/値 Description
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
この戻り値は、配列に関する情報をキャッシュするプロバイダー内のソフトウェアまたは通信の問題を通知します。 キャッシュを復元するには、 IVdsHwProvider::Reenumerate メソッドの後に IVdsHwProvider::Refresh メソッドを使用します。
VDS_E_OBJECT_DELETED
0x8004240BL
サブシステム オブジェクトが存在しなくなりました。
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
サブシステムが失敗状態であり、要求された操作を実行できません。
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
別の操作が進行中です。この操作は、前の操作または操作が完了するまで続行できません。

注釈

ほとんどのサブシステムは、新しい接続と切断を自動的に検出します。 ただし、そうでない場合、この方法は手動で検出を開始する手段を提供します。 この操作の完了には長い時間がかかる場合があります。

このメソッドで新しく接続されたドライブが検出されると、プロバイダーによって新しいドライブ オブジェクトが作成されます。 メソッドが新しく切断されたドライブを検出すると、プロバイダーは、最後の VDS 参照が削除されるまで古いドライブ オブジェクトを保持し、オブジェクトを削除します。

各オブジェクトには、一意の永続的な識別子が必要です。 オブジェクト ID は有効な GUID である必要があります。 実装者は、再開前と再開後の両方に存在するオブジェクトに対してこのメソッドを使用して、各再開の間でオブジェクト ID を保持する必要があります。

要件

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

こちらもご覧ください

IVdsHwProvider::Reenumerate

IVdsHwProvider::Refresh

IVdsLun::GetProperties

IVdsSubSystem