Метод ICustomDestinationList::GetRemovedDestinations (shobjidl_core.h)
Извлекает текущий список назначений, которые были удалены пользователем из существующего списка переходов, который должен заменить этот настраиваемый список переходов.
Синтаксис
HRESULT GetRemovedDestinations(
[in] REFIID riid,
[out] void **ppv
);
Параметры
[in] riid
Тип: REFIID
Ссылка на IID интерфейса, извлекаемого через ppv, обычно IID_IObjectArray.
[out] ppv
Тип: void**
При возврате этого метода содержит указатель интерфейса, запрошенный в riid. Обычно это IObjectArray, представляющая коллекцию IShellItem или объекты IShellLink, представляющие элементы в списке удаленных назначений.
Возвращаемое значение
Тип: HRESULT
Если этот метод выполнен успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT.
Замечания
Элементы можно удалить из пользовательского интерфейса списка переходов с помощью действия пользователя. Затем элемент помечается как удаленный и больше не отображается. Приложение может использовать этот метод, чтобы сообщить, какие элементы пользователь удалил, чтобы он не знал, чтобы они отображались в пользовательском списке. Например, этот метод должен вызываться при запуске приложения, если это приложение не будет создавать новый список через ICustomDestinationList::BeginList.
Настоятельно рекомендуется удалить приложение любые данные отслеживания назначения при выборе пользователя для удаления этого назначения. Если пользователь снова обращается к этому назначению в будущем, он может быть повторно добавлен в список переходов и снова может накапливать данные. Тот же список удаленных назначений, полученный этим методом, извлекается при вызове ICustomDestinationList::BeginList. В этом случае приложение не должно немедленно пытаться перенаправить любой удаленный элемент или вызов AppendCategory завершится ошибкой. Это гарантирует, что приложение учитывает намерение пользователя удалить элемент.
Если у приложения есть явный идентификатор пользовательской модели приложения (AppUserModelID), перед вызовом этого метода необходимо вызвать SetAppID.
Даже если приложение вызывает GetRemovedDestinations и находит элемент в списке с высокой вероятностью восстановления в списке прыжков раньше, чем новый настраиваемый список переходов, как ожидается, будет создан, приложение должно записать список переходов без этого элемента и повторно добавить его в список только после того, как пользователь снова получил доступ к нему.
Приложение может добавить последние или частоизвестную категорию в настраиваемый список переходов. Элементы в этой категории могут находиться в списке удаленных элементов, даже если они не отображались в какой-либо пользовательской категории. В этом случае приложение должно по-прежнему очищать все данные об использовании этого элемента, если он был сохранен.
Вызов GetRemovedDestinations не очищает удаленные данные назначения. Эти данные необходимы BeginList для следующего поколения списка. Удаленные данные назначения больше не требуются и удаляются после начала сеанса создания списка BeginList, продолжая без неудачных вызовов AppendCategoryи завершен вызовом CommitList.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 7 [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2008 R2 [только классические приложения] |
целевая платформа | Виндоус |
заголовка | shobjidl_core.h (include Shobjidl.h) |
библиотеки |
Shell32.lib |
DLL | Shell32.dll (версия 6.1 или более поздняя) |