IWMDMStorage3::SetEnumPreference メソッド (mswmdm.h)

SetEnumPreference メソッドは、ストレージの優先ビュー モードを設定します。

構文

HRESULT SetEnumPreference(
  [in, out] WMDM_STORAGE_ENUM_MODE *pMode,
  [in]      DWORD                  nViews,
  [in]      WMDMMetadataView       *pViews
);

パラメーター

[in, out] pMode

ストレージ列挙子の目的のモード。 モードの詳細については、「 WMDM_STORAGE_ENUM_MODE」を参照してください。 pMode の値が ENUM_MODE_USE_DEVICE_PREF に設定されている場合は、デバイスの設定に基づいて、ENUM_MODE_RAWまたはENUM_MODE_METADATA_VIEWSに設定されます。

[in] nViews

指定されたビュー定義の数。

pMode の値がENUM_MODE_RAWの場合、または pMode の値がENUM_MODE_USE_DEVICE_PREFであり、デバイスがメタデータ ビューを使用しない場合、このパラメーターは無視されます。

pMode の値がENUM_MODE_METADATA_VIEWSの場合、または pMode の値がENUM_MODE_USE_DEVICE_PREFで、デバイスがメタデータ ビューを優先する場合、このパラメーターは引き続き 0 にすることができます。 この場合、Windows Media デバイス マネージャーでは既定のメタデータ ビューが使用されます。

nViews の値が 0 の場合、ppViewsNULL である必要があります。 nViews の値が 0 でない場合、ppViewsnViews 要素を持つ WMDMMetadataView 構造体の配列を指す必要があります。

[in] pViews

ビュー定義の配列。 配列の長さは nViews と等しい必要があります。

pMode の値がENUM_MODE_RAWの場合、または pMode の値がENUM_MODE_USE_DEVICE_PREFであり、デバイスがメタデータ ビューを使用しない場合、このパラメーターは無視されます。

pMode の値がENUM_MODE_METADATA_VIEWSの場合、または pMode の値がENUM_MODE_USE_DEVICE_PREFで、デバイスがメタデータ ビューを優先する場合、このパラメーターは引き続き NULL にすることができます。 この場合、Windows Media デバイス マネージャーは既定のメタデータ ビューを使用します。

nViews の値が 0 の場合、このパラメーターの値は NULL である必要があります。 nViews の値が 0 でない場合、ppViewsnViews 要素を持つ WMDMMetadataView 構造体の配列を指す必要があります。

戻り値

このメソッドは HRESULT を返します。 次の表に、使用可能なすべての値を示します。

リターン コード 説明
S_OK
メソッドが成功しました。
E_OUTOFMEMORY
項目を割り当てるのに十分なメモリがありません。
E_INVALIDARG
1 つ以上のパラメーターが無効です。
WMDM_E_NOT_CERTIFIED
呼び出し元には、この操作を実行する権限がありません。
WMDM_E_NOTSUPPORTED
オブジェクトは、このメソッドをサポートしていません。
E_FAIL
未指定のエラーが発生しました。

解説

Windows Media デバイス マネージャーでは、デバイス上のコンテンツのメタデータ ビューを表示できます。 最上位のストレージ (内部メモリやストレージ カードなど) のすべてのコンテンツについて説明し、コンテンツのメタデータによって整理されたコンテンツを提示するストレージ列挙子を返します。 メタデータ ビューの定義は、 WMDMMetadataView 構造体を介して提供されます。

この動作は pMode パラメーターによって制御されます。 pMode が ENUM_MODE_RAW に設定されている場合、Windows Media デバイス マネージャーは、デバイスのストレージ上のファイル システムの階層をミラー化する列挙子を返します。 pMode が ENUM_MODE_METADATA_VIEWS に設定されている場合、Windows Media デバイス マネージャーはメタデータ ビューを生成します。

デバイスは、デバイスのインストール時にデバイス パラメーター UseMetadataViews を設定することで、ユーザー設定を示します。 UseMetadataViews の詳細については、「デバイス パラメーター」を参照してください。 アプリケーションで返されるストレージ列挙子の種類をデバイスが決定できるようにする場合は、 pMode を ENUM_MODE_USE_DEVICE_PREF に設定する必要があります。

このメソッドが呼び出されると、後で IWMDMStorage::EnumStorage を呼び出すと、このメソッドによって設定されたストレージ列挙設定に従って動作します。 このメソッドを再度呼び出して、後続の IWMDMStorage::EnumStorage 呼び出しの動作を変更できます。

通常、このメソッドは最上位のストレージで呼び出す必要があります。 このメソッドがメタデータ ビュー内のいずれかのストレージで呼び出されると、WMDM_E_NOTSUPPORTEDが返されます。

要件

要件
対象プラットフォーム Windows
ヘッダー mswmdm.h
Library Mssachlp.lib

こちらもご覧ください

IWMDMMetaData インターフェイス

IWMDMStorage インターフェイス

IWMDMStorage::EnumStorage

WMDMMetadataView