ICustomDestinationList::GetRemovedDestinations メソッド (shobjidl_core.h)

既存のジャンプ リストからユーザーによって削除された移動先の現在のリストを取得します。このカスタムジャンプ リストは置き換えられます。

構文

HRESULT GetRemovedDestinations(
  [in]  REFIID riid,
  [out] void   **ppv
);

パラメーター

[in] riid

型: REFIID

ppvを介して取得するインターフェイスの IID への参照 (通常はIID_IObjectArray。

[out] ppv

型: void**

このメソッドから制御が戻るときに、riidで要求されたインターフェイス ポインター 格納します。 これは通常、IObjectArrayです。これは、削除された宛先の一覧の項目を表す IShellItem または IShellLink オブジェクト コレクションを表します。

戻り値

型: HRESULT

このメソッドが成功した場合は、S_OKを返します。 それ以外の場合は、HRESULT エラー コードが返されます。

備考

項目は、ユーザー アクションを使用してジャンプ リスト UI から削除できます。 その後、アイテムは削除済みとしてマークされ、表示されなくなります。 アプリケーションでは、このメソッドを使用して、ユーザーが削除した項目を通知して、カスタム リストに表示しないようにすることができます。 たとえば、アプリケーションの起動時にこのメソッドを呼び出す必要があります。そのアプリケーションが ICustomDestinationList::BeginListを使用して新しいリスト 生成しない場合です。

ユーザーがその宛先を削除することを選択した場合は、アプリケーションで宛先追跡データをクリアすることを強くお勧めします。 ユーザーが将来その宛先に再度アクセスした場合は、ジャンプ リストに再び追加され、再びデータが蓄積される可能性があります。 ICustomDestinationList::BeginList 呼び出されると、このメソッドによって取得されたのと同じ削除された宛先リストが取得されます。 その場合、アプリケーションは削除された項目を直ちに再挿入しないでください。または、AppendCategory 呼び出しは失敗します。 これにより、アプリケーションがユーザーのアイテムを削除する意図を尊重できます。

アプリケーションに明示的なアプリケーション ユーザー モデル ID (AppUserModelID) がある場合は、このメソッドを呼び出す前 SetAppID を呼び出す必要があります。

アプリケーションが GetRemovedDestinations 呼び出し、新しいカスタムジャンプ リストの作成が予想されるよりも早くジャンプ リストに復元される可能性の高いリスト上の項目を見つけた場合でも、アプリケーションはその項目を含まないジャンプ リストを書き込み、ユーザーが再びアクセスした後にのみリストに再追加する必要があります。

アプリケーションは、カスタムジャンプリストに 最近使った または 頻繁既知のカテゴリ を追加できます。 そのカテゴリ内の項目は、カスタム カテゴリに表示されなかった場合でも、削除された項目リストに含まれている可能性があります。 その場合でも、そのアイテムの使用状況データが保存されていた場合でも、アプリケーションは消去する必要があります。

GetRemovedDestinations を 呼び出しても、削除された宛先データはクリアされません。 このデータは、次のリスト生成のために、BeginList で必要になります。 削除された宛先データは不要になり、BeginListによってリスト生成セッションが開始された後、AppendCategoryへの呼び出しが失敗せず、CommitListの呼び出しによって完了 後にクリアされます。

必要条件

要件 価値
サポートされる最小クライアント Windows 7 [デスクトップ アプリのみ]
サポートされる最小サーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー shobjidl_core.h (Shobjidl.h を含む)
ライブラリ Shell32.lib
DLL Shell32.dll (バージョン 6.1 以降)

関連項目

ICustomDestinationList

ICustomDestinationList::BeginList

タスク バー拡張機能 を する