Метод ICustomDestinationList::BeginList (shobjidl_core.h)

Инициирует сеанс сборки для настраиваемого списка переходов.

Синтаксис

HRESULT BeginList(
  [out] UINT   *pcMinSlots,
  [in]  REFIID riid,
  [out] void   **ppv
);

Параметры

[out] pcMinSlots

Тип: UINT*

Указатель, который при возврате этого метода указывает на текущий пользовательский параметр для параметра Количество последних элементов, отображаемых в Списки перехода в окне Свойства панели задач и меню "Пуск". Значение по умолчанию — 10. Это максимальное число назначений, которое будет отображаться, и это общее число всех назначений, независимо от категории. Можно добавить дополнительные назначения, но они не будут отображаться в пользовательском интерфейсе.

В списке переходов всегда отображается по крайней мере это количество слотов — назначений и, если есть место, задач.

Это число не включает разделители и заголовки разделов, если общее количество разделителей и заголовков не превышает четырех. Разделители и заголовки разделов за пределами первых четырех могут уменьшить количество отображаемых назначений, если пространство ограничено. Это число не влияет на стандартные записи команд при закреплении или открепивании, закрытии окна или запуске нового экземпляра. Он также не влияет на задачи или закрепленные элементы, число которых может отображаться в зависимости от пространства, доступного для списка переходов.

[in] riid

Тип: REFIID

Ссылка на IID интерфейса, извлекаемого в ppv, обычно IID_IObjectArray, которая представляет все элементы, хранящиеся в списке удаленных назначений для приложения. Эти сведения используются, чтобы гарантировать, что удаленные элементы не являются частью нового списка переходов.

[out] ppv

Тип: void**

При возврате этим методом содержит указатель интерфейса, запрошенный в riid. Обычно это IObjectArray, представляющий коллекцию объектов IShellItem и IShellLink , представляющих удаленные элементы.

Возвращаемое значение

Тип: HRESULT

Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .

Комментарии

Если приложение имеет явный идентификатор модели пользователя приложения (AppUserModelID), перед вызовом этого метода необходимо вызвать ICustomDestinationList::SetAppID .

Интерфейс IObjectArray , полученный в параметре ppv , представляет тот же список удаленных назначений, который извлекается с помощью GetRemovedDestinations. При создании нового списка переходов приложения должны сначала обработать все удаленные назначения. Данные отслеживания для любого элемента в удаленном списке должны быть удалены. Если приложение пытается включить элемент через AppendCategory , который присутствует в этом списке удаленных назначений, вызов AppendCategory завершается ошибкой . Это гарантирует, что приложения учитывают выбор пользователем удаленных элементов. После вызова CommitList без неудачного вызова AppendCategory из-за попытки повторно добавить удаленный элемент, выполненный с момента BeginList, удаленный список назначений удаляется. По истечении этого времени удаленный ранее элемент может вернуться в список назначений, если пользователь продолжает использовать элемент.

Для запуска списка необходимо вызвать BeginList, прежде чем будут выполняться какие-либо вызовы для его заполнения через AppendCategory, AppendKnownCategory или AddUserTasks.

Требования

Требование Значение
Минимальная версия клиента Windows 7 [только классические приложения]
Минимальная версия сервера Windows Server 2008 R2 [только классические приложения]
Целевая платформа Windows
Header shobjidl_core.h (включая Shobjidl.h)
Библиотека Shell32.lib
DLL Shell32.dll (версия 6.1 или более поздняя)

См. также раздел

ICustomDestinationList

Расширения панели задач