IKnowledgeWithMarkers::NextAllChangeUnitsRequiredMarker

Возвращает следующий элемент списка элементов, помеченных как требующие включения всех базовых единиц.

HRESULT NextAllChangeUnitsRequiredMarker(
  BYTE * pItemId,
  DWORD * pIdSize);

Параметры

  • pItemId
    [in, out, unique, size_is(*pIdSize)] Возвращает идентификатор следующего элемента списка идентификаторов, помеченных как требующие включения всех базовых единиц.
  • pIdSize
    [in, out] Указывает число байтов в объекте pItemId. Возвращает число байтов, необходимое для получения идентификатора, если значение pItemId слишком мало, или число записанных байтов.

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

  • S_OK.

  • Значение S_FALSE, если в списке больше нет элементов или объект набора знаний содержит элементы, помеченные как содержащие все базовые единицы.

  • HRESULT_FROM_WIN32(ERROR_MORE_DATA), если размер pItemId слишком мал. В этом случае необходимое число байтов возвращается в параметре pIdSize.

  • Значение E_INVALIDARG, если значение pIdSize больше максимального размера, определенного схемой формата идентификаторов элементов.

  • Значение E_POINTER, если идентификаторы элементов имеют переменную длину, а параметр pIdSize имеет значение NULL.

Замечания

Если используются пользовательские фильтры, поставщик источника должен проверить, требуют ли элементы, добавляемые в пакет изменений, включения всех базовых единиц. Для этого вызовите IKnowledgeWithMarkers::ContainsAllChangeUnitsRequiredMarker или перечислите элементы с помощью NextAllChangeUnitsRequiredMarker. Когда для элемента задается маркер, требующий включения всех базовых единиц, поставщик источника должен включать все базовые единицы, проходящие фильтр для этого элемента.

См. также

Справочник

Интерфейс IKnowledgeWithMarkers