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 の場合、ppViews は NULL である必要があります。 nViews の値が 0 でない場合、ppViews は nViews 要素を持つ 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 でない場合、ppViews は nViews 要素を持つ WMDMMetadataView 構造体の配列を指す必要があります。
戻り値
このメソッドは HRESULT を返します。 次の表に、使用可能なすべての値を示します。
リターン コード | 説明 |
---|---|
|
メソッドが成功しました。 |
|
項目を割り当てるのに十分なメモリがありません。 |
|
1 つ以上のパラメーターが無効です。 |
|
呼び出し元には、この操作を実行する権限がありません。 |
|
オブジェクトは、このメソッドをサポートしていません。 |
|
未指定のエラーが発生しました。 |
解説
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 |