次の方法で共有


IVdsService::QueryProviders メソッド (vds.h)

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

VDS に認識されているハードウェア プロバイダーとソフトウェア プロバイダーの一覧を含む列挙オブジェクトを返します。

構文

HRESULT QueryProviders(
  [in]  DWORD          masks,
  [out] IEnumVdsObject **ppEnum
);

パラメーター

[in] masks

VDS_QUERY_PROVIDER_FLAGによって列挙されるプロバイダー マスク。 呼び出し元は、ソフトウェア プロバイダー マスク、ハードウェア プロバイダー マスク、またはその両方を指定できます。

[out] ppEnum

プロバイダーをプロバイダー オブジェクトとして列挙するために使用できる IEnumVdsObject インターフェイス ポインターのアドレス。 詳細については、「 列挙オブジェクトの操作」を参照してください。 呼び出し元は、 IUnknown::Release メソッドを呼び出すことによって必要なくなった場合に、インターフェイスと各プロバイダー オブジェクトを解放する必要があります。

戻り値

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

リターン コード/値 説明
S_OK
列挙は正常に返されます。
VDS_E_INITIALIZED_FAILED
0x80042401L
VDS の初期化に失敗しました。 サービスの初期化が完了する前にアプリケーションがこのメソッドを呼び出すと、初期化が完了するまでメソッドはブロックされます。 初期化に失敗した場合、このエラーが返されます。

注釈

ハードウェア プロバイダーのプロバイダーの種類を確認するには、各プロバイダー オブジェクトの IVdsHwProviderType2::GetProviderType2 メソッドまたは IVdsHwProviderType::GetProviderType メソッドを呼び出します。

要件

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

こちらもご覧ください

IEnumVdsObject

IVdsService

VDS_HWPROVIDER_TYPE

VDS_QUERY_PROVIDER_FLAG